0

我有一个包含 5 个输入字段的表单,并且我有如下验证。我正在使用 jquery 验证插件。

<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.11.1/jquery.validate.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.11.1/additional-methods.js"></script>

jQuery代码:

$("#commentForm").validate({
    rules: {
     cname1: { required : true, minlength: 2 },
     cname2: { required : true, minlength: 2 },
     cname3: { required : true, minlength: 2 },
     cname4: { required : true, minlength: 2 },
     cname5: { required : true, minlength: 2 }
    }
});

验证工作正常,没有任何问题。我的要求是,您可以看到所有输入名称都以 fiwth 开头cnamecname在这里,我可以根据模式定义规则,而不是为所有以相同名称开头的字段定义规则吗?类似于$('[name^="cname"]') ?

谢谢!

4

2 回答 2

1
$("#commentForm").validate();
$('#commentForm [name^="cname"]').each(function() {

 $(this).rules('add', { required : true, minlength: 2 });

});

还要检查jQuery.validator.addClassRules以添加您自己的基于类的规则(如 .min-2 或 smth)

于 2013-08-23T09:03:28.927 回答
-1

尝试这个:

$( "[name^='cname']" ).rules( "add", {
  required: true,
  minlength: 2
});

更多信息:http: //jqueryvalidation.org/rules。请记住:

要求验证父表单,即首先调用 $( "form" ).validate()

于 2013-08-23T09:03:16.843 回答