在没有一个表单的情况下用ENTER阻止提交
Block submit with ENTER without one form
我有一个简单的输入提交拦截器:
$(window).keydown(function(event){
if(event.keyCode == 13){
event.preventDefault();
return false;
}
});
这就是工作。但我有一个表单(快速搜索),我想在其中输入submit,所以我如何添加"if":if(event.keyCode==13&&NOT IN$('#search'))
如果您的表单具有search
的id
$(window).keydown(function(event){
if(event.keyCode == 13 && !$(event.target).closest('#search').length){
event.preventDefault();
return false;
}
});
如果您的输入具有search
:的id
$(window).keydown(function(event){
if(event.keyCode == 13 && !$(event.target).is('#search')){
event.preventDefault();
return false;
}
});
试试这个:
$(window).keydown(function(event){
if(event.target.closest('#search').length==0){
if(event.keyCode == 13){
event.preventDefault();
return false;
}
}
});
您可以使用类似的东西
$(window).keydown(function(event){
if(event.keyCode == 13 && event.target.closest('#search').length == 0) {
event.preventDefault();
return false;
}
});
如果您的搜索id是"search"
window.onkeydown=function(e){
if(e.keyCode==13&&e.target.id!='search'){
e.preventDefault();
}
}
return false==e.preventDefault;e.stop传播.
你不需要返回false。
对于较旧的browsrs
window.onkeydown=function(e){
e=e||window.event;
if((e.keyCode||e.which)==13&&(e.target||e.srcElement).id!='search'){
return false
}
}
纯js
相关文章:
- 当阻止Enter键提交AJAX表单时,关注下一个输入是't工作
- 按enter键时,jQuery UI自动完成字段未提交
- 如何通过按Enter提交输入表格,但在按shift和Enter时不提交
- 当我有多个可能的提交按钮时,如何在ENTER上进行表单提交
- 使用javascript在Enter键上提交表单
- 使用enter提交表单,而不触发页面刷新
- 单击按钮时提交 OnClick 事件,但在键盘上按 Enter 时不提交
- 使用 ENTER 键提交表单在 Angular 中不起作用
- 使用 Enter 提交表单会在插入输入字段后中断 - 原因以及如何修复
- Google 地方自动填充place_changed事件会在提交表单后按 Enter 键触发
- 修改 jQuery 自动完成,不要在 Enter 上急切提交
- Ajax使用enter和onclick提交表单
- 当焦点在TextArea上时,按enter键提交表单
- 使用ENTER键提交的Wordpress表单不起作用
- 使用Shift+Enter提交表单
- 允许Shift + Enter提交表单
- 按键盘ENTER提交ajax请求
- 按钮点击工作正常,但不希望的行为,当按下enter提交表单
- 如何创建一个新的文本区域,当用户使用shift+enter提交
- 在文本框中,当我按ENTER提交表单时,当我按shift+ENTER插入新行