Android浏览器软键盘中的回车(确认)会触发表单提交的问题解决办法

     最近在公司里做项目的时候遇到一个问题,开发出来的网页需要在Android手机中的浏览器中打开,当在表单中的文本框内输入内容时,如果这时点软键盘中的回车会导致表单被提交,而不是正常的点击按钮提交。

    经上网查询了相关资料与自己的测试,下面发出解决的代码:

    在表单的onSubmit事件中加入以下代码:

   

Javascript Code
 1 var sUserAgent = navigator.userAgent.toLowerCase();
 2 //判断浏览器是否为Android浏览器
 3 var bIsAndroid = sUserAgent.match(/android/i) 
 4 == "android";
 5 
 6 //submit事件的事件源对象,如果是普通的点击按钮提交表单dragObj的值为"buttom",如果是点击软键盘的回车,则值为null
 7 var ev=ev || window.event;
 8 var target=ev.target || ev.srcElement;
 9 var  dragObj  =  target.getAttribute('type');
10 
11 
12 if(bIsAndroid && dragObj==null){
13         //如果是Android浏览器并且用户是点击的软键盘的回车,则不提交表单
14     return false;
15 }
原文地址:https://www.cnblogs.com/lovesangel/p/2067675.html