【发布时间】:2013-11-27 06:02:31
【问题描述】:
好的,我正在开发一个表单,根据我设置的验证规则测试特定表单元素。我正在尝试根据.valid() 是否返回true 或false 将布尔变量hasError 设置为true 或false。我遇到的问题是由于某种原因.valid() 返回false,即使我的规则设置为required: false,用户也没有在输入中输入数据。不应该将规则设置为required: false 允许验证通过,即使没有输入数据?
这是我正在使用的代码:
$.validator.addMethod("regex", function(value, element, regexp) {
var check = false;
var re = new RegExp(regexp);
return this.optional(element) || re.test(value);
},
"Please do not use any special characters"
);
$('#formElem').validate({
rules: {
testItem:{required: false, regex: /^[0-9A-Za-z\s`~!@$%^&*()+{}|;'",.<>\/?\\-]+$/}
}
});
var hasError = false;
if($('#testItem').valid()) {
hasError = false;
}else{
hasError = true;
}
【问题讨论】:
-
你能发布一个有效的 jsfiddle 吗?
-
您应该显示足够的代码来复制报告的问题。