jQuery验证似乎适用于min="1"
和min="-1"
,但不适用于min="0"
。考虑一下jsFiddle。它适当地反对第一个input
元素和第三个元素中的值-5,但在第二个元素中接受-5,其中min="0"
。
这是jQuery验证中的错误还是我忽略了什么?
<form id="myform">
<input type="text" name="negativeone" min="-1"/>
<br/>
<input type="text" name="zero" min="0"/>
<br/>
<input type="text" name="one" min="1" />
</form>
<button id="event2">Test</button>
<a href="http://docs.jquery.com/Plugins/Validation" target="_blank">Validation Documentation</a>
$(document).ready(function () {
$('#myform').validate({
});
$('#event2').on('click', function () {
$('#myform').valid();
});
});
答案 0 :(得分:5)
回答你的问题:
“不”,你没有忽视任何东西,“是”,这似乎是一个错误。
看看这两个相同的jsFiddles,其中只有版本不同......
jQuery验证v1.10 (无错误):http://jsfiddle.net/mblase75/MgvRn/
jQuery验证v1.11.1 (错误):http://jsfiddle.net/MgvRn/1/
此外,这仅在使用HTML5验证属性时才会出现问题。
在修复插件之前,解决方法是在.validate()
内声明规则。
$('#myform').validate({
rules: {
zero: {
min: 0
}
}
});
工作演示(v1.11.1):http://jsfiddle.net/MgvRn/2/
我建议您在开发人员的Github页面上报告此错误: