繁体   English   中英

如何防止两次提交表格?

[英]how to prevent submitting form twice?

我正在使用MVC来开发网站。

在页面中,我使用模式打开“创建新项目”。 所以我引用了“ jquery.js ”。

另外,我使用“ @ Ajax.ActionLink()”以模式加载局部视图。 所以我需要参考“ jquery.unobtrusive-ajax.min.js

为了验证表单,我引用了“ jquery.validate *

而且,我有一些文件必须从“模式形式”上载。 最终引用了“ jquery.form.min.js ”。

我需要所有这些j-query插件。 但问题是“表单提交了两次”,我无法删除任何此插件。 我该怎么办? 这是我的表单ajax代码:

 $('#frmEditNewCompany').ajaxForm({
    beforeSubmit: function (arr, $form, options) {
        $(".blockerModal").show();
    },
    onsubmit: function (event) {
        $(".blockerModal").show();
    },
    success: function (data, textStatus, jqXHR) {
        alert("after submit")
        if (data.Success == true) {
            $("#dv-modal-lg").modal("hide");
         }
        eval(data.Script);
        $(".blockerModal").hide();
    },
    error: function (jqXHR, textStatus, errorThrown) {
        $(".blockerModal").hide();
    }
});

在您的js中,只需在所有函数的顶部调用函数并禁用按钮

   $(':input[type="submit"]').prop('disabled', true);

最后启用

 $(':input[type="submit"]').prop('disabled', false);

或者您可以将globle var用作布尔值并检查

if(!flag) 
{
flag=true;
//..do
}
else
{
return false;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM