q09*_*987 1 javascript jquery jquery-validate
在这个答案的代码中:
$.validator.addMethod('lessThanEqual', function(value, element, param) {
return this.optional(element) || parseInt(value) <= parseInt($(param).val());
}, "The value {0} must be less than {1}");
Run Code Online (Sandbox Code Playgroud)
是什么意思{0}和{1}?Javascript中定义那些参数替换的经验法则是什么?
所以根据评论,我想进一步询问,以便在这里传递{0}和{1}.
我必须使用什么语法来验证函数lessThanEqual.
谢谢
没有"特殊"含义,它们只是在显示消息时验证器插件替换的标记,在数字上指的是规则的参数.
具体来说,这是在插件中发生的:
message = jQuery.format(message.replace(theregex, '{$1}'), rule.parameters);
Run Code Online (Sandbox Code Playgroud)
所以{0}指第一个参数,{1}第二个参数等等.这是jQuery.validate 1.7中的格式函数:
$.validator.format = function(source, params) {
if ( arguments.length == 1 )
return function() {
var args = $.makeArray(arguments);
args.unshift(source);
return $.validator.format.apply( this, args );
};
if ( arguments.length > 2 && params.constructor != Array ) {
params = $.makeArray(arguments).slice(1);
}
if ( params.constructor != Array ) {
params = [ params ];
}
$.each(params, function(i, n) {
source = source.replace(new RegExp("\\{" + i + "\\}", "g"), n);
});
return source;
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1520 次 |
| 最近记录: |