如何在不使用提交按钮的情况下触发验证

时间:2011-04-26 03:13:09

标签: jquery ajax validation plugins

我正在使用jQuery Validation插件并尝试使用备用按钮触发验证/提交。我想创建一个jquery函数,它将改变css,然后运行validate函数。我查看了之前已回答的问题,但没有找到任何解决此问题的Validation插件和submitHandler函数。有什么建议?

更新问题:我想要使用的按钮位于表单之外。使用位于该表单之外的按钮提交和验证表单的最佳方法是什么?

以下是代码:

$("#edit-button").click(function(event) {

$('#postAccordion2').css('padding-bottom', '0px');
$('#edit-button').css('display','none');
$("#applicant-form").validate({
    submitHandler: function(form) {
            $(form).ajaxSubmit({                  
                type: "POST",
                data: {
                    "firstName" : $('#firstName').val(),
                    "lastName" : $('#lastName').val()
                    },
                dataType: 'json',
                url: './includes/ajaxtest.php',
                error: function() {alert("doh!");},
                success: function() {alert("yippee!");},

    }    

  });

return false;   
   },
        errorPlacement: function(error,element) {
                        return true;
                },
        rules: {
            "firstName": {
                required: true,
                minlength: 1
                },  
            "lastName": {
                required: true
                }
        }


});
   });

2 个答案:

答案 0 :(得分:21)

你应该能够在你喜欢的任何元素上调用有效:

$('selector').valid();

以下是一些参考资料:

http://docs.jquery.com/Plugins/Validation/valid

http://docs.jquery.com/Plugins/Validation/validate

答案 1 :(得分:8)

您必须在没有参数的情况下调用validate来触发验证功能,如下所示:

$("#applicant-form").validate();