Ces*_*sar 9 asp.net-mvc jquery jquery-validate asp.net-mvc-3
我有一个像这样的属性public decimal? MyProperty { get; set; },它不是必需的并且可以为空,但如果我没有放置一个值> 0,验证器说MyProperty字段必须是一个数字,如果我将该字段留空我收到相同的错误,如果我把0(零)我收到同样的错误.
Ex:
0 -> Error
1 -> Ok
0,00 -> Error
0,01 -> Ok
empty -> Error
Run Code Online (Sandbox Code Playgroud)
我不明白为什么这不起作用,我使用$.preferCulture("pt-BR");但没有意义,因为价值0,01被接受,我不相信文化可能是问题.
PS:验证在客户端不起作用,服务器端正常工作.
Zot*_*ote 10
默认号码功能有一个错误.它的测试parseFloat(value) == 0和parseFloat为'0'返回0.
为了解决这个问题,我已将其覆盖为
$.validator.methods.number = function (value, element) {
return parseFloat(value).toString() !== "NaN";
}
Run Code Online (Sandbox Code Playgroud)
我知道这不是最好的方法,但这种解决方法解决了我的问题.
| 归档时间: |
|
| 查看次数: |
2764 次 |
| 最近记录: |