我在用jquery 验证插件
我使用添加了一个自定义方法添加方法这又调用另一个方法来检查是否有效UK telephone number
这是我的代码(简化):
html
<form id="myform">
<label for="field">Required, telephone: </label>
<input class="required" id="field" name="field" />
<br/>
<input type="submit" value="Submit" />
</form>
jquery
$(document).ready(function(){
$("#myform").validate({
rules:{
field:{
required:true;
UKTelNumber:true
}
}
});
});
jQuery.validator.addMethod("UKTelNumber", function(value,element) {
if (!checkUKTelephone (value)) {
alert (telNumberErrors[telNumberErrorNo]);
return false;
}
else {
return true
}
},jQuery.validator.format(telNumberErrors[telNumberErrorNo]));
功能checkUKTelephone
设置 var 的值telNumberErrorNo
根据错误类型。
所有错误消息都在一个数组中telNumberErrors
.
现在我的要求是如何显示现在正在警报的那些错误消息。
passing jQuery.validator.format(telNumberErrors[telNumberErrorNo])
作为消息(第三个选项)添加方法没有帮助。
我也尝试过只传递这个telNumberErrors[telNumberErrorNo]
但它每次只显示一条消息,即包含在telNumberErrors[0]
请帮助我
提前致谢
好吧,我得到了问题的解决方案,所以我想回答我自己的问题,这可能会帮助其他人
只需创建一个函数并返回正在警告的错误
var dispError = function(){
return telNumberErrors[telNumberErrorNo];
}
然后将该函数作为第三个参数传递给添加方法
jQuery.validator.addMethod("UKTelNumber", function(value,element) {
if (!checkUKTelephone (value)) {
return false;
}
else {
return true
}
},dispError);
然后调用验证方法
$(document).ready(function(){
$("#myform").validate({
rules:{
field:{
required:true;
UKTelNumber:true
}
}
});
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)