使用jquery validatye插件,我正在验证并将表单提交到服务器,该服务器将表单数据存储在数据库中。问题是当用户双击表单时,会有多个请求进入,并且它向服务器提交两次,并导致多个recor在数据库中具有相同的数据。我想避免这种情况。我希望表单只提交一次,即使用户在提交按钮上单击两次。
代码:
kka2=normrnd(130,150,100000,1);%entropy=6.1660
当用户点击提交时,表单被验证,然后调用提交处理函数。即使单击了两次提交按钮,我也希望只调用一次
答案 0 :(得分:0)
submitHandler
仅在表单有效且单击提交按钮后触发。如果您在首次点击后立即停用提交按钮,则无法进行双击。
submitHandler: function(form) { // form is valid
// disable submit button since it was already clicked and submit is happening next
$('#your-submit-button').prop('disabled', true);
// function to submit form to client
submitFormtoClient();
}
答案 1 :(得分:0)
每当您确定表单有效且应该提交时,在return true
之前,您可以设置表单的提交按钮,它永远不应该提交两次。
如果您确定它不应该提交,则您将返回false。
$('.foo-form').on("submit", function(event){
$(this).children('button[type=submit]').prop('disabled', true);
return true;
}
在这种情况下,我使用了button[type=submit]
,但您也可以使用input[type=submit]
。