jQuery验证器插件:验证可选字段
问题 我想使用我创建的自定义验证器来验证一个字段,该验证器本质上是一个电话号码的正则表达式,仅当该字段有值时,否则它不需要验证,因为它是可选的 自定义验证程序:jQuery验证器插件:验证可选字段,jquery,jquery-plugins,validation,jquery-validate,Jquery,Jquery Plugins,Validation,Jquery Validate,问题 我想使用我创建的自定义验证器来验证一个字段,该验证器本质上是一个电话号码的正则表达式,仅当该字段有值时,否则它不需要验证,因为它是可选的 自定义验证程序: $.validator.addMethod('phone', function (value) { return /^[01]?[- .]?\(?[2-9]\d{2}\)?[- .]?\d{3}[- .]?\d{4}$/.test(value); }, 'Please enter a valid US phon
$.validator.addMethod('phone', function (value) {
return /^[01]?[- .]?\(?[2-9]\d{2}\)?[- .]?\d{3}[- .]?\d{4}$/.test(value);
}, 'Please enter a valid US phone number.');
规则:
phone: {
required: true,
phone: true
},
fax: {
phone: true
}
我甚至试过:
phone: {
required: true,
phone: true
},
fax: {
required: function(element){
if (!$("#cf-fax").val()) { return true; } else { return false; }
}
phone: true
}
作为参考,这是我试图参考的字段:
<input type="text" name="fax" class="optional" size="15" maxlength="14" id="cf-fax" />
我很感激你的帮助,因为我完全迷路了=\ 您可以这样调用
.optional()
(在验证插件中定义)
$.validator.addMethod('phone', function (value, element) {
return this.optional(element) || /^[01]?[- .]?\(?[2-9]\d{2}\)?[- .]?\d{3}[- .]?\d{4}$/.test(value);
}, 'Please enter a valid US phone number.');
例如,这是验证插件的标准方案。好极了,真是糟糕!谢谢你。我将深入研究您提到的其他方法。@creativetim-Welcome:)并欢迎使用SO!,确保通过答案左侧的复选标记接受解决问题的答案,该复选标记有助于:)