这是测试今天在jira给我提出的一个bug
下面是贴的代码
屏蔽或者禁止回车键
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <!--直接行内加--> <!--<input onkeydown="if(event.keyCode==13){event.keyCode=0;event.returnValue=false;}">--> <!--非行内加--> <form action="https://www.baidu.com" method="post" onsubmit=""> <input type="text" onkeydown="textShieldEnter()" /> <input type="submit" value="提交"/> </form> <script> //uc浏览器有键盘回车自动提交功能,屏蔽如下 function textShieldEnter(){ if (event.keyCode == 13) {//判断是否为回车键,Event是window对象的一个属性,是全局的。 event.keyCode = 0;//屏蔽回车键 event.returnValue = false; alert("不许enter提交!!"); } } </script> </body> </html>
但是表单表格多的时候 , 就不想这样做了, 这样全部没有回车提交了
document.onkeydown = function(e) { var login = (typeof event != 'undefined') ? window.event: e; if(login.keyCode == 13) { return false; } };
刚刚看到一个很全的总结 https://www.cnblogs.com/caicaizi/p/6072554.html 总结的"只要把type="submit"改成type="button"然后js提交, 在不要有一个type=”text”的input就行了。就不会发生回车跳转。 "
<!----2019.1.21---->
上周改完之后, 浏览器有缓存, 提交的时候, 竟然提交不了了:
原因是把<input>type="submit"改成type="button"了, [自己创建的新bug]
解决: 应该给这个<input>一个点击事件,来触发form表单提交,
同时<input type="button" name="不要等于submit"/>,
还需要给<form>加id
<form action="/lineManager/add" method="post" id="publishSubmit" onsubmit="return checkForm()"> <div class="publish-btn"> <input type="button" name="别直接为submit" onclick="formSubmit()" value="立即发布" > </div> </form>
//给新按钮加提交表单 function formSubmit(){ $("#publishSubmit").submit(); }