我已经看到了大量关于如何在选择列表上使用 jQuery Validation 的示例——我正在尝试实现一个,但它对我不起作用。一般来说,我对插件真的很陌生,我对自己做错了什么感到完全困惑。
预期的行为是它不应该验证用户是否将选择菜单保留为“默认”。他们必须做出选择。
我首先连接新的验证器方法。
Javascript
(function($) {
$.validator.addMethod('mustbe', function(value, element, params) {
var testValue = params['propertyvalue'];
var condition = params['condition'];
if ((condition == '0') && (value != testValue)) return true;
if ((condition == '1') && (value == testValue)) return true;
return false;
});
})(jQuery);
$(document).ready(function() {
$("#form1").validate();
$('#form1').submit(function() {
alert($('#form1').valid());
});
});
然后我将元数据添加到实际的 HTML 中。
HTML
<form id="form1" action="">
<select id="select_list" data-val="true"
data-val-mustbe="You must select a value"
data-val-mustbe-condition="0"
data-val-mustbe-propertyvalue="default"
data-val-required="You must select a value" >
<option value="default">Choose...</option>
<option value="1">1</option>
<option value="2">2</option>
</select>
<input type="submit" id="submit" value="Submit" />
</form>
它只是拒绝验证。这里也是一个小提琴的链接: