jquery表单验证相等

时间:2014-05-30 03:42:41

标签: jquery jquery-validate

你好我的jquery案例,例如:

我有下拉列表和文本字段表单:

<select id="id_level"  name="id_level">
<option value=""  > -choose-</option>
<option value="1"  > -Administrator-</option>
<option value="2"  > -Kondektur Bus-</option>
<option value="3"  > -Staf Operasi-</option>
</select>

<input name="job" type="text" id="job"/>

我想要验证下拉列表: 必需:“必须选择” 和相等与:

var text_id_level = $("#id_level option:selected" ).text();
    var val_job= $("job").val();

    if(text_id_level !=""){

            if(text_id_level =="Administrator" && (val_job!="Kondektur Bus" || val_job!="Staf Operasi"))
            {
                // equal = true
            }

            else if(text_id_level == val_job) 
            {
                // equal = true
            }

            else
            {
                // equal = false , message : not equal
            }

    }

    else
    {
        // equal = false, message : must choose
    }

如何在jquery validate插件中格式化上面的代码? 格式如

jQuery.validator.addMethod("notEqual", function(value, element, param) {
  return this.optional(element) || value != param;
}, "Please specify a different (non-default) value");

从这里&gt;&gt; How to add a Not Equal To rule in jQuery.validation

这是我的jquery验证metode

$("#Form").validate({
        rules: {
            id_level:"required",
                        job:"required",

        },
        messages: {
            id_level:"choose one",
                        job:"must fill"
        }
    });

我不知道我的情况如何等于metode,对不起我的英文

1 个答案:

答案 0 :(得分:0)

这将让您大致了解如何声明多个规则。我无法从你的问题中进一步理解,所以你需要相应地调整它。

$("#Form").validate({
    rules: {
        id_level: "required",     // <- shortcut for one rule
        job: {                    // <- more than one rule on this field
            required: true,  
            notEqual: '#id_level' // <- set your custom rule parameter to id="id_level"
        }
    },
    messages: {
        id_level: "choose one",
        job: {
            required: "must fill" // <- need to specify which rule here
        }
    }
});

您还需要稍微调整自定义方法,这样您就可以使用value获取您传入的字段param

jQuery.validator.addMethod("notEqual", function (value, element, param) {
    return this.optional(element) || value != $(param).val();
}, "Please specify a different value");

DEMO:http://jsfiddle.net/Ztjz4/