我在使用jQuery和Validation插件验证表单上的条目时遇到问题。条目必须为零或正数。我用一种检测负数(或NaNs)的方法没有遇到任何问题,但我有任何方法可以检测空条目或只有空格的方法。
相关代码:
//WORKS
//require positive numbers/floats
$.validator.addMethod('requirePositiveNumber', function (value){
if ((isNaN(value)) || (value < 0) ){
return false;
}else{
return true;
}
}, "Please enter a positive amount"
);
//DOES NOT WORK
//require no spaces
$.validator.addMethod("noSpace",function(value,element)
{
return this.optional(element) || /^[.\d]+/i.test(value);
},"no spaces please");
//DOESNT WORK EITHER
$.validator.addMethod("noSpace", function(value, element){
if (value.indexOf(" ") < 0 && value !=""){
return true;
}else{
return false;
}
}, "please enter a positive amount"
);
也没有测试空白。
答案 0 :(得分:0)
假设“myform”是你的表格ID而“myfield”是你的字段名称,这应该可以解决问题:
“isPositiveNumber”jQuery验证器规则:
$.validator.addMethod("isPositiveNumber", function(value, element) {
return this.optional(element) || /^[0-9.]+$/i.test(value);
}, "Please enter a positive amount");
验证脚本:
$("#myform").validate({
rules: {
myfield: { required: true, isPositiveNumber: true }
},
messages: {
// Overwrite the default required message
myfield: { required: 'Please enter a positive amount' }
}
});
在字段上使用内置的required: true
规则,将阻止字段验证字段是空的还是只是一堆空格。