jef*_*kee 11 html jquery textarea keystroke submit
$(window).keydown(function(event){
if(event.keyCode == 13) {
event.preventDefault();
return false;
}
});
Run Code Online (Sandbox Code Playgroud)
以上是我得到的代码,它有效地将"输入"键作为整个系统中的表单提交者来杀死,这正是我想要的.但是,也会在textarea标记上禁用回车键- 用户应该能够点击该标记以进入下一行.那么有没有办法修改上面的代码来检测输入是否来自一个textarea标签,它不运行该event.preventDefault();行?
我在整个网站上有这么多形式 - 不得不单独配置它们将是一场噩梦,可能没有意义 - 必须有一种通用的方式.上面的代码在网站的每个页面上运行,以防止通过点击"输入"意外提交.
Raf*_*fay 11
我更喜欢这个keyup事件...使用该event.target属性
$(window).keydown(function(event){
if((event.which== 13) && ($(event.target)[0]!=$("textarea")[0])) {
event.preventDefault();
return false;
}
});
Run Code Online (Sandbox Code Playgroud)
The*_*pha 10
你可以试试这个
$(document).ready(function(){
$(window).keydown(function(event){
if(event.keyCode == 13 && event.target.nodeName!='TEXTAREA')
{
event.preventDefault();
return false;
}
});
});
Run Code Online (Sandbox Code Playgroud)
这里有一个小提琴.
@ 3nigma的解决方案可以正常工作,但这是另一种实现此行为的方法:
$(function(){
$('#myform').find('input,select').keydown(function(event){
if ( event.keyCode == 13 ){
event.preventDefault();
}
});
});
Run Code Online (Sandbox Code Playgroud)