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

是否存在min=";的错误;0“;在jquery验证中?还是我忽略了什么?,jquery,jquery-validate,Jquery,Jquery Validate,jQuery验证在min=“1”和min=“-1”中似乎可以正常工作,但在min=“0”中则不行。考虑一下这个。它在第一个输入元素和第三个元素中适当地将值设为-5,但在第二个元素中接受-5,其中min=“0” 这是jQuery验证中的错误还是我忽略了什么 <form id="myform"> <input type="text" name="negativeone" min="-1"/> <br/> <input type="text" n

jQuery验证在
min=“1”
min=“-1”
中似乎可以正常工作,但在
min=“0”
中则不行。考虑一下这个。它在第一个
输入
元素和第三个
元素中适当地将值设为-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>

回答你的问题:

“不”,你没有忽略任何东西,“是的”,这似乎是一个错误

看看这两个相同的JSFIDLE,其中只有版本不同

jQuery验证v1.10(无bug):

jQuery验证v1.11.1(错误):

此外,这似乎只是使用HTML5验证属性时的一个问题

在修复插件之前,一个解决方法是只在
.validate()
中声明规则

工作演示(v1.11.1):


我建议您在开发人员的Github页面上报告此错误:


那把小提琴对吗?它不反映您的代码…按预期工作。你在哪个浏览器中测试?在OSXX上的Chrome v28中测试报告,如,使用你的小提琴
$(document).ready(function () {
    $('#myform').validate({
    });

    $('#event2').on('click', function () {
        $('#myform').valid();
    });
});
$('#myform').validate({
    rules: {
        zero: {
            min: 0
        }
    }
});