【问题标题】:jquery validate conflict with script preventing double submission [duplicate]jquery验证与防止双重提交的脚本冲突[重复]
【发布时间】:2016-03-17 09:18:27
【问题描述】:

我正在使用由具有 jquery.validate 验证的 Toolset CRED 插件生成的表单。 当用户反复点击提交按钮时,我遇到了重复内容生成的问题。

我已尝试添加此代码以防止多次提交

    $("form").submit(function() {
        // submit more than once return false
        $(this).submit(function() {
            return false;
        });
        // submit once return true
        return true;
    });

它工作正常,但如果用户第一次提交表单时它没有通过验证,那么提交按钮就不再工作了。

您能建议任何调整吗? 谢谢 卡罗

【问题讨论】:

    标签: jquery jquery-validate submit-button


    【解决方案1】:

    您可以创建一个全局变量并检查它是否已更改。 然后假设它是一个常规表单,页面会重新加载,您可以再次发送表单。

    var hasBeenSent = false;
    
    $("form").on('submit',function(e){
       if(hasBeenSent != false){
           e.preventDefault(); // this should prevent sending the form.
       }else{
           hasBeenSent = true;
       }   
    })
    

    【讨论】:

    • 这个想法的一个大问题是 jQuery Validate 插件有自己的内置提交处理函数。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-05
    相关资源
    最近更新 更多