我正在使用jQuery Validation库在提交之前验证我网站上的表单。我想为我的所有表单使用一个validate()
函数,只需添加required
属性即可形成输入。但我遇到了麻烦。
我想使用additional-methods.js
库中的验证方法来验证电话号码和其他特殊输入。在我的validate()
函数中,我只想添加以下内容。
$('form').validate({
rules: {
user_phone: {
phoneUS: true,
},
},
});
但这仅适用于name='user_phone'
的输入。我有多个手机输入的表格。有没有办法在phoneUS
的所有输入上使用type='tel'
验证方法?
提前感谢任何对此提供任何见解的人。
修改
我正在寻找类似的东西......
$.validator.setDefaults({
rules: {
'type=tel': {
phoneUS: true,
},
},
});
答案 0 :(得分:1)
不,您不能在.validate()
或.setDefaults()
内通过一次name
以外的任何其他方式声明规则。
有没有办法在
phoneUS
的所有输入上使用type='tel'
验证方法?
是的,使用the .rules('add')
method,您可以使用任何jQuery选择器并一次定位多个输入元素。
$('input[type="tel"]').each(function() {
$(this).rules('add', {
phoneUS: true,
// other rules
});
});
您必须在每个输入元素上仍然有唯一的name
。
当选择器包含多个元素时,您必须使用jQuery .each()
。
您仍然必须使用.validate()
方法初始化表单上的插件。