我想覆盖jquery validate插件的“数字”验证。
这部分:
// http://docs.jquery.com/Plugins/Validation/Methods/number
number: function(value, element) {
return this.optional(element) || /^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?$/.test(value);
},
我做了一些搜索,但我能找到的只是如何覆盖消息(我已经完成了)以及如何克服核心jQuery功能,这使我指向了这个方向......
$.fn.validate.prototype.methods.number = function (value, element) {
return this.optional(element) || /^-?\d+(?:\,\d+)?$/.test(value);
};
使用此代码,我收到以下错误:
$。fn.validate.prototype.methods是 未定义
我错过了什么吗?还是我想做不可能的事?
如果这是不可能的,建议您更改此功能的替代方法,而不必为我的应用中的每个数字字段添加自定义验证器,这将是非常受欢迎的!
谢谢!
答案 0 :(得分:15)
是的,此功能内置于库中,因此您可以在不必处理内部的情况下完成此操作。
$.validator.addMethod("number", function(value, element) {
return this.optional(element) || /^-?\d+(?:\,\d+)?$/.test(value);
});