具体来说,我不想在按下回车键时使用已推荐的event.preventDefault()方法,因为这会破坏至少Internet Explorer中数据表的功能.
我尝试了一些方法
$("#form").submit(function(event){
console.log(event);
return false; // Allows me to read the console before the form submits!
});
要比较事件之间的差异(单击提交按钮与按Enter键),似乎没有任何明显的事情.我本以为后者有一个event.keyCode,但事实并非如此.
我能想到的一个冗长的解决方法似乎是删除我的提交按钮,并将其替换为常规按钮,其单击必须提交表单.但是那样,我必须在输入中捕获输入键按下并处理从头开始提交表单.丑陋,但可行.同样,如果我能帮助它,我不想应用任何preventDefault().
解决方法:
一种hacky解决方案,但您可以将事件处理程序绑定到单击提交按钮,而不是提交#form.然后,您可以检查是否存在与事件关联的非零坐标.如果是,则单击提交按钮,否则,按下回车键.例如
$("input[type='submit']").click(function(event){
if (event.screenX === 0) alert("You hit the enter key!");
else alert("You clicked the submit button!");
return false; // Allows me to read the console before the form submits!
});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。