jquery验证器 - addClassRules

时间:2012-01-02 20:07:41

标签: jquery html jquery-validate

我正在尝试添加类规则,但似乎无法正常工作。

在提交表单时,它仅在第二个文本框的onblur时验证第一个文本框,显示错误。

$.validator.addClassRules({
    contactvalues: {
        minlength: 10
    },
    email: {
        email: true
    }
});
$("#extracontacts").validate();

其中#extracontacts是FORM的id。

这是表格的HTML(摘要):

<form id="extracontacts" action="/toolbox/contact/manage/save" method="post">
    <input type="text" id="contacts_value_1" value="negative@gmail.com" name="contacts_value[]" class="contactvalues email valid">
    <input type="text" id="contacts_value_2" value="testing" name="contacts_value[]" class="contactvalues email">           
</form>

另外,如果我在document.ready()之后编辑输入的类,我是否必须回忆$("#extracontacts").validate();

2 个答案:

答案 0 :(得分:0)

尝试这种方式,您还需要输入提交到您的表单(我的提交输入ID将只是“sumbit_form”):

function InitValidations() {

    function setContactsRules() {

        $('#contacts_value_1').rules('add', {
            required: true,
            email: true,
            messages: {
                required: 'please type your email',
                email: 'please type a valid email'
            }
        });

        $('#contacts_value_2').rules('add', {
            required: true,
            messages: {
                required: 'please type something'
            }
        });

    $('#submit_form').click(function (event) {

        var isValid = $("#extracontacts").validate();

        setContactsRules();

        if (!isValid) {
            event.preventDefault();
        }

    });

}

$(document).ready(function () {

    InitValidations();

});

希望它有所帮助。问候。

答案 1 :(得分:0)

尝试像这样进行验证

$(function(){
$("#extracontacts").validate({
 rules: {
    name: {
     required: true,
     minlength: 3,
     maxlength: 50,
 },     


messages: {
    name: {   
       required: "Your name is Required input",
       minlength: "The Postman demands at least {3} characters",
       maxlength: "Please, no more than {50} characters"
     }, 
 });
 });