我有一个表单,其中的字段已预先填充了数据库中的数据,因为我需要根据新的数据格式架构更改电话号码,所以我还需要立即启动对预填充输入字段的验证。
我的JS代码如下:
根据新模式验证HR电话号码的方法:
$.validator.addMethod("mobileHR", function(phone_number, element) {
phone_number = phone_number.replace(/\(|\)|\s+|-/g, "");
return this.optional(element) || phone_number.length > 9 &&
phone_number.match(/^\+[0-9]{1,3}\.[0-9]{1,14}$/);
}, "Unesite broj u fromatu: +385.111234567");
和函数调用:
$(document).ready(function () {
// initialize validation
$('.form-horizontal').validate({
// set immediate validation, on event code 9
onkeyup: function (element, event) {
if (event.which === 9 && this.elementValue(element) === "") {
return;
} else {
this.element(element);
}
},
rules: {
"contactdetails[Registrant][Phone]": {
required: true,
mobileHR: true
}
},
messages: {
"contactdetails[Registrant][Phone]": {
required: "Molimo unesite broj telefona"
}
}
});
});
输入字段是这样的,并且值参数已准备就绪,因为从数据库中获取了数据。
<div class="controls">
<input kl_virtual_keyboard_secure_input="on" name="contactdetails[Registrant][Phone]" value="011123456" size="30" class="Registrantcustomwhois" type="text">
</div>
现在,我要警告用户编辑数据,即使他没有在所需输入字段中更改数据,也要更新其电话号码的格式,因此我基本上想在文档已加载时调用validate()函数。
这里有例子。
放置验证规则后,在jQuery就绪后,只需添加$('.form-horizontal').valid();
以验证表单即可。
参见小提琴,已相应更新
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句