Jquery 使用enter键防止多次提交表单
下面是我的代码Jquery 使用enter键防止多次提交表单,jquery,enter,Jquery,Enter,下面是我的代码 $('#myDIV').keydown(function (event) { var key=event.which || event.charCode; if(key == 13) // the enter key code { event.preventDefault(); importItem(); } }); 当我多次按enter按钮时,importItem()会被多次调用,如何防止这种情
$('#myDIV').keydown(function (event) {
var key=event.which || event.charCode;
if(key == 13) // the enter key code
{
event.preventDefault();
importItem();
}
});
当我多次按enter按钮时,importItem()会被多次调用,如何防止这种情况发生?我在这里没有submit功能来使用issubmitted类型的代码。使用setTimeout()来延迟和防止代码的多次执行
var timeout = null;
$('#myDIV').keydown(function (event) {
var key=event.which || event.charCode;
if(key == 13) // the enter key code
{
event.preventDefault();
if(timeout != null){
clearTimeout(timeout);
timeout = null;
}
timeout = setTimeout(function(){
importItem();
}, 1000);
}
});
您可以这样尝试
var checker=true$('#myDIV').keydown(函数(事件){var key=event.which | | event.charCode;if(checker){if(key==13)//输入键代码{event.preventDefault();importItem();checker=false;})代码>它不允许我在不刷新pageclick事件的情况下对不同的表单再次使用enter键?你的意思是按键事件?是的,我的坏像上面评论中的示例请检查每次我按enter键时,checkchecker都会变成真的,恐怕这不起作用。我在使用gap提交表单时按了enter键,然后它又被提交了多次,您想在允许使用另一个回车键之前先完成提交吗?是的,完全正确,在提交表单之后,我只想回车键在按下后再次启动。您还可以发布您的函数importItem()
// Define a global flag
allowSubmit = true
// And in your custom submit event function
if allowSubmit
$('#yourForm').submit() #Fire native submit function manually here
allowSubmit = false
else
return false