s.k*_*aul 4 jquery jquery-validate
我有一个默认值为-1的html选择.
<select id="BusinessDistrictId">
<option value="-1">Select one...</option>
//other options...
</select>
Run Code Online (Sandbox Code Playgroud)
我想强制用户选择-1值以外的任何选项.我的jquery验证规则 -
rules: {
BusinessDistrictId: { required: true , min:0}
}
Run Code Online (Sandbox Code Playgroud)
但它不起作用.有什么建议吗?
Spa*_*rky 20
如果你想用jQuery Validate插件验证这个元素,它的标记有两个问题......
<select id="BusinessDistrictId">
<option value="-1">Select one...</option>
//other options...
</select>
Run Code Online (Sandbox Code Playgroud)
1)根据jQuery Validate插件的要求,每个元素必须具有唯一的name属性.当规则被宣布在内时.validate(),它们由它们识别name.但是,无论如何声明规则,每个元素仍必须具有唯一name属性,因为这是插件跟踪表单元素的方式.
2)您的min: 0规则只是破坏required规则的解决方法.要required: true在<select>元素上使用,您必须value=""在第一个<option>元素上具有该属性; 所以 在你的情况下,required规则将始终被忽略. 由于您有min: 0规则,因此您将获得类似的验证结果,该结果需要选择项目.即使使用第一个value=""属性,在元素上option同时使用required和min规则select也没有逻辑意义.
这是正确的代码......
HTML:
<select id="BusinessDistrictId" name="BusinessDistrictId">
<option value="">Select one...</option> <!-- first option contains value="" -->
//other options...
</select>
Run Code Online (Sandbox Code Playgroud)
jQuery:
rules: {
BusinessDistrictId: { // <-- this is the name attribute
required: true
}
},
Run Code Online (Sandbox Code Playgroud)
演示:http: //jsfiddle.net/y82dV/
| 归档时间: |
|
| 查看次数: |
38753 次 |
| 最近记录: |