【问题标题】:How to prevent Multiple time form submission on clicking Enter button in form validation如何防止在表单验证中单击 Enter 按钮时多次提交表单
【发布时间】:2016-07-27 03:33:40
【问题描述】:

我在我的应用程序中使用表单验证。当我多次按 Enter 时,表单会被多次提交。

这是我的代码:

  $.validate({
        modules: 'security',
        form: '#import-form',
        validateOnBlur: false,
        errorMessagePosition: 'element', 
        scrollToTopOnError: false,
        language: {
            requiredFields: "This field is required."
        },
        onSuccess: function ($form) {
            submitjob();
            return false;
        }

    });

请告诉我如何防止在按回车键时多次提交表单。提前致谢。

【问题讨论】:

    标签: javascript formvalidation-plugin jquery-form-validator


    【解决方案1】:

    您是否尝试在 onSuccess 中使用 preventDefault()?喜欢

     $.validate({
            modules: 'security',
            form: '#import-form',
            validateOnBlur: false,
            errorMessagePosition: 'element', 
            scrollToTopOnError: false,
            language: {
                requiredFields: "This field is required."
            },
            onSuccess: function ($form) {
                $form.preventDefault();
                submitjob();
                return false;
            }
    
        });
    

    【讨论】:

    • 是的,阿尔伯特,我也尝试过,但它不起作用。表单只会提交多次。
    • 您的 HTML
      action 属性可能有值。尝试将其留空。
    【解决方案2】:

    请使用 submitHandler 回调而不是 onSuccesscallback

    $.validate({
            modules: 'security',
            form: '#import-form',
            validateOnBlur: false,
            errorMessagePosition: 'element', 
            scrollToTopOnError: false,
            language: {
                requiredFields: "This field is required."
            },
            submitHandler: function ($form) {
                submitjob();
                return false;
            }
    
        });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-10-07
      • 2014-08-15
      • 1970-01-01
      • 2010-10-28
      • 1970-01-01
      • 2020-05-09
      • 2011-06-04
      • 1970-01-01
      相关资源
      最近更新 更多