我编写了一个jQuery验证规则,如果输入的数量小于5000或超过500000,则显示验证失败。我正在尝试将验证消息设置为变量,使其在规则中是动态的但我收到一个错误,说我没有定义我的validationMessage变量。
# Error
Uncaught ReferenceError: validationMessage is not defined
# Custom Rule
$.validator.addMethod("requestAmount", function(value, element) {
var cleanAmount = value.replace(/\,/g,'');
var validationMessage = '';
console.log(cleanAmount)
if (cleanAmount < 5000) {
var validationMessage = 'Please enter an amount greater than $5,000.00';
return false;
} else if (cleanAmount > 500000) {
var validationMessage = 'Please enter an amount less than $500,000.00';
return false;
} else {
return true;
};
}, validationMessage);
答案 0 :(得分:1)
在功能范围之外声明var validationMessage
,并在每次将值设置为var
时删除validationMessage
:
var validationMessage;
# Custom Rule
$.validator.addMethod("requestAmount", function(value, element) {
var cleanAmount = value.replace(/\,/g,'');
validationMessage = '';
console.log(cleanAmount)
if (cleanAmount < 5000) {
validationMessage = 'Please enter an amount greater than $5,000.00';
return false;
} else if (cleanAmount > 500000) {
validationMessage = 'Please enter an amount less than $500,000.00';
return false;
} else {
return true;
};
}, function(){return validationMessage;});