在jquery验证中是否存在min =“0”的错误?还是我忽略了什么?

时间:2013-08-15 15:11:06

标签: jquery jquery-validate

jQuery验证似乎适用于min="1"min="-1",但不适用于min="0"。考虑一下jsFiddle。它适当地反对​​第一个input元素和第三个元素中的值-5,但在第二个元素中接受-5,其中min="0"

-1 and 1 are fine. 0 is not

这是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>

的JavaScript

$(document).ready(function () {
    $('#myform').validate({
    });

    $('#event2').on('click', function () {
        $('#myform').valid();
    });
});

1 个答案:

答案 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页面上报告此错误:

https://github.com/jzaefferer/jquery-validation/