【问题标题】:formvalidation only work once表单验证只工作一次
【发布时间】:2015-06-01 14:13:34
【问题描述】:

我正在使用this plugin 来验证我的表单。当我第一次点击提交插件时,如果我有错误,修复它们并再次点击,插件总是会转到“onError”(即使表单是好的)。

$('#save_edit_student').on('click', function(event){
  if (!$(this).hasClass('button_disabled')){
     $('#edit_student_form').formValidation('validate');
  }
  event.preventDefault();
 });

$('#edit_student_form').formValidation({
            framework: 'bootstrap',
            autoFocus : true,
            fields: {
                form_student_name: {
                    validators: {
                        notEmpty: {
                            message: 'Please enter student\'s first name'
                        }
                    }
                },
                form_student_lastname: {
                    validators: {
                        notEmpty: {
                            message: 'Please enter student\'s last name'
                        }
                    }
                },
                username: {
                    validators: {
                        notEmpty: {
                             message: 'Please enter a username.'
                         },
                        remote: {
                            type: 'POST',
                            url: 'validator.php',
                            message: 'That username is already taken.',
                            delay: 500
                        }
                    }
                }

            },
            onError: function(e) {
                e.preventDefault();
                $('#save_edit_student').removeClass('button-disabled');
            },
            onSuccess: function(e) {
                some on success code
            }
        });

【问题讨论】:

  • 我建议添加一个指向插件 API 的链接,而不仅仅是主页。formvalidation.io/api
  • 您在致电$('#edit_student_form').formValidation('validate'); 之前尝试过$('#edit_student_form').formValidation('resetForm'); 吗? formvalidation.io/api/#reset-form
  • 谢谢@MjrKusanagi!这样可行。但我不知道为什么我需要添加它..插件应该单独使用
  • 我从来没有听说过这个插件——我只是从阅读 API 页面中猜到的。但是您是对的,他们的文档对此并不十分清楚。也许通常不需要,但您的特定配置恰好是非标准的。如果你强烈认为它应该是标准的,你应该提交一个功能请求,以便他们可以改进他们的插件。

标签: jquery formvalidation-plugin


【解决方案1】:

我遇到了同样的问题,并在表单验证有效之前调用了resetForm() 方法。在我的案例中,不同之处在于重新验证表单元素的实际问题仅影响复选框和无线电输入组。表单重新验证对文本、文本区域和选择输入工作得很好。这可能是 formvalidation.io 的错误吗?

【讨论】:

  • 我读了一点,似乎我的问题有所不同...我没有提到这一点,但我的表单处于引导模式,当我尝试验证时我需要采取不同的行动模态的形式。仍然不适合我
猜你喜欢
  • 2021-03-08
  • 1970-01-01
  • 2023-03-29
  • 1970-01-01
  • 2014-06-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多