我正在使用jQuery Validation插件,我正在尝试弄清楚如果选择前缀(Mr,Ms等)或后缀(Jr,Sr,PhD),我可以如何创建名称字段。这就是我所拥有的:
$('#geninfo').validate({
rules:{
firstname: {required: function(element){
return $("#prefix").val() != " ";
}
}
},
messages:{
firstname: 'enter a name'
}
});
这是HTML:
<ul>
<li><label for="prefix">Prefix:</label>
<select name="prefix" id="prefix">
<option selected="selected" value=" ">Select One</option>
<option value="ms">Ms</option>
<option value="miss">Miss</option>
<option value="mrs">Mrs</option>
<option value="mr">Mr</option>
<option value="dr">Dr</option>
</select>
</li>
<li><label for="firstname">First Name:</label> <input type="text" name="firstname" id="firstname" /></li>
<li><label for="suffix">Suffix:</label>
<select name="suffix" id="suffix">
<option selected="selected" value=" ">Select One</option>
<option value="jr">Jr</option>
<option value="sr">Sr</option>
<option value="ii">II</option>
</select>
</li></ul>
我似乎无法弄清楚如何编写js以便它会占用前缀||后缀。关于我做错了什么的线索? 提前谢谢。
答案 0 :(得分:1)
我认为您正在寻找depends
规则 - http://docs.jquery.com/Plugins/Validation/validate#toptions
rules:{
firstname: {
required: {
depends: function(element) {
return $("#prefix").val() != " ";
}
}
}
},
答案 1 :(得分:1)
HTML中有错误
<select name="prefix" id="prefix">
<option selected="selected" value=" ">Select One</option>
<option value="ms">Ms</option>
<option value="miss">Miss</option>
<option value="mrs">Mrs</option>
<option value="mr">Mr</option>
<option value="dr">Dr</option>
</select>
在上面的HTML代码中
<option selected="selected" value=" ">Select One</option>
值有“空格” - “”不为空
当你检查时,你正在检查空而不是空格,所以它不会产生任何结果。
将您的代码更改为已删除所选选项
的空间 <select name="prefix" id="prefix">
<option selected="selected" value="">Select One</option>
<option value="ms">Ms</option>
<option value="miss">Miss</option>
<option value="mrs">Mrs</option>
<option value="mr">Mr</option>
<option value="dr">Dr</option>
</select>
并执行了这个java脚本,效果很好。
$('#geninfo').validate({
rules: {
firstname: {
required: function () {
return $('#prefix').val() == ''
}
}
},
messages: {
firstname: alert('enter a name') //enter a name'
}
});
希望这有帮助,