我有一个默认值为-1的html select。
<select id="BusinessDistrictId">
<option value="-1">Select one...</option>
//other options...
</select>
我想强迫用户选择-1值以外的任何选项。我的jquery验证规则-
rules: {
BusinessDistrictId: { required: true , min:0}
}
但这不起作用。有什么建议吗?
如果要使用jQuery Validate插件验证此元素,则其标记有两个问题...
<select id="BusinessDistrictId">
<option value="-1">Select one...</option>
//other options...
</select>
1)根据jQuery Validate插件的要求,每个元素都必须具有唯一的name
属性。当在内部声明规则时.validate()
,将通过其标识name
。但是,无论如何声明规则,每个元素都必须仍然具有唯一的name
属性,因为这是插件跟踪表单元素的方式。
2)您的min: 0
规则只是解决折断required
规则的方法。为了required: true
在<select>
元素上使用,必须value=""
在第一个<option>
元素上具有属性。因此,在您的情况下,该required
规则将始终被忽略。而且由于有了min: 0
规则,您将得到类似的验证结果,需要选择一个项目。即使value=""
在first属性上option
,在元素上同时具有required
和min
规则select
也没有逻辑意义。
这是正确的代码...
HTML:
<select id="BusinessDistrictId" name="BusinessDistrictId">
<option value="">Select one...</option> <!-- first option contains value="" -->
//other options...
</select>
jQuery的:
rules: {
BusinessDistrictId: { // <-- this is the name attribute
required: true
}
},
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句