alw*_*arn 6 forms jquery jquery-validate
我试图用jquery验证器验证具有相同名称的两个输入..
<script src='
http://code.jquery.com/jquery-latest.min.js '></script>
<script src='http://ajax.aspnetcdn.com/ajax/jquery.validate/1.11.1/jquery.validate.min.js'></script>
<script>
$(document).ready(function(){
$('#frm').validate();
$("[name=inp_text]").each(function(){
$(this).rules("add", {
required: true,
checkValue: true
});
});
$.validator.addMethod("checkValue", function(value, element) {
var response = ((value > 0)&&(value <= 100))||((value == 'test1')||(value =='test2'));
return response;
}, "invalid value");
})
</script>
<form id='frm' method='post'>
<input type='text' name='inp_text'/><br>
<input type='text' name='inp_text'/><br>
<input type='submit' name=''/>
</frm>
Run Code Online (Sandbox Code Playgroud)
但是当我运行这个代码时,它只验证第一个输入,第二个输入被简单地忽略
我也试过使用<input type='text' name='inp_text[]'/><br>但仍然没有工作.
我应该改变什么...?
提前致谢
Spa*_*rky 16
"我正在尝试使用jquery验证器验证具有相同名称的两个输入......"
<input type='text' name='inp_text'/>
<input type='text' name='inp_text'/>
Run Code Online (Sandbox Code Playgroud)
"但是,当我运行此代码时,它只验证第一个输入,第二个输入被简单地忽略"
你不能有两个相同或这个插件的input字段将无法正常工作.该属性必须是唯一的. (唯一的一个例外是,复选框或无线电输入的"分组"将与相应的提交共享相同的单点数据.但是,对于每个复选框和无线电元素,必须仍然是唯一的.)type="text"namenamenamenamename
"我应该改变什么......? "
使每个name属性都是唯一的
<input type='text' name='inp_text[1]'/>
<input type='text' name='inp_text[2]'/>
Run Code Online (Sandbox Code Playgroud)
然后使用"开始于"选择器,^=...
$("[name^=inp_text]").each(function () {
$(this).rules("add", {
required: true,
checkValue: true
});
});
Run Code Online (Sandbox Code Playgroud)
工作演示:http: //jsfiddle.net/PgLh3/
注意:您也可以id在使用rules('add')方法时定位元素,但是对于这种情况,没有解决任何问题,因为插件在每个元素上仍然需要唯一 .nameinput