jQuery.validator.addClassRules 不工作

jQuery.validator.addClassRules not working

我查阅了这个帖子

我尝试过这种方式,但没有成功

<form action="#">
<input type="text" id="name1" class="fileName" name="name1" />
<input type="text" id="name2" class="fileName" name="name2"/>
<input type="text" id="name3" class="fileName" name="name3"/>
<input type="text" id="name4" class="fileName" name="name4"/>
    <input type="submit" />
</form>

$(document).ready(function(){
    $.validator.addClassRules({
        fileName:{
        required: true
    }
    });

$.validator.messages.fileName = 'File name mandatory!';

    $("form").validate();
});

我的 js fiddle http://jsfiddle.net/tridip/Nbcj9/395/

required 更改为 cRequired,然后通过添加 $.[ 覆盖 cRequired 消息=24=]("cRequired", $.validator.methods.required,"File name mandatory!");

$(document).ready(function(){
    $.validator.addClassRules({
        fileName:{
                  cRequired: true
                 }       
    });

   $.validator.addMethod("cRequired", $.validator.methods.required,"File name mandatory!");

   $("form").validate();
});

已更新 fiddle - http://jsfiddle.net/Nbcj9/397/

因为所需规则有默认消息,您可以更改它:

$.extend($.validator.messages, {required: "File name mandatory!"});
$.validator.addClassRules("fileName", {required: true});

$(function () {
  $("form").validate();
});
<script src="https://code.jquery.com/jquery-1.12.1.min.js"></script>
<script src="https://ajax.aspnetcdn.com/ajax/jquery.validate/1.8/jquery.validate.min.js"></script>


<form action="#">
    <input type="text" id="name1" class="fileName" name="name1" />
    <input type="text" id="name2" class="fileName" name="name2"/>
    <input type="text" id="name3" class="fileName" name="name3"/>
    <input type="text" id="name4" class="fileName" name="name4"/>
    <input type="submit" />
</form>