我无法让jquery.validate.js在几个字段上正常工作。这是代码:
$("#input_home_area").rules("add", {
digits: true,
maxlength: 3,
minlength: 3
});
$("#input_home_prefix").rules("add", {
digits: true,
maxlength: 3,
minlength: 3
});
$("#input_home_suffix").rules("add", {
digits: true,
maxlength: 4,
minlength: 4
});
HTML:
<li id='' class='gfield sixth required'>
<label class='gfield_label' for=''>Home Phone Area Code (ex: 954)</label>
<div class='ginput_container'>
<input name='' id='input_home_area' type='text' value='' class='medium' tabindex='6' placeholder="(ex: 954)" />
</div>
</li>
<li id='' class='gfield sixth required'>
<label class='gfield_label' for=''>Home Phone Prefix (ex: 555)</label>
<div class='ginput_container'>
<input name='' id='input_home_prefix' type='text' value='' class='medium' tabindex='6' placeholder="(ex: 555)" />
</div>
</li>
<li id='' class='gfield sixth required'>
<label class='gfield_label' for=''>Home Phone Suffix (ex: 1236)</label>
<div class='ginput_container'>
<input name='' id='input_home_suffix' type='text' value='' class='medium' tabindex='6' placeholder="(ex: 1236)" />
</div>
</li>
问题很难解释,但我会尽我所能。当我包含验证#input_home_suffix
的脚本时,#input_home_area
和#input_home_prefix
都会被验证,就好像#input_home_suffix
一样。因此,即使我将#input_home_area
和#input_home_prefix
都设置为要输入3位数,它们也会被验证,就好像必须输入4位数一样。即使我评论了验证#input_home_area
和#input_home_prefix
的脚本,它们仍然会被验证,就好像它们实际上是#input_home_suffix
我完全不知道发生了什么。页面上的每个其他字段都完美地验证,只是这些字段存在问题。
答案 0 :(得分:2)
使用验证插件时,您必须按name
属性调出输入,而不是id
。