JQuery手机验证插件#
我正在尝试为电话号码创建一个自定义验证方法。我想允许用户以任何格式输入手机#,如(800)555-1212、800.555.1212等。然后只需去掉非数字字符,以我自己的格式重新格式化文本并复制到输入字段中。我玩过不同的方法,但似乎找不到正确的组合。我最近的尝试是:JQuery手机验证插件#,jquery,validation,phone-number,Jquery,Validation,Phone Number,我正在尝试为电话号码创建一个自定义验证方法。我想允许用户以任何格式输入手机#,如(800)555-1212、800.555.1212等。然后只需去掉非数字字符,以我自己的格式重新格式化文本并复制到输入字段中。我玩过不同的方法,但似乎找不到正确的组合。我最近的尝试是: jQuery.validator.addMethod("validphone", function(value, element, param) { mNum = value.replace(/[^0-9]/g, '');
jQuery.validator.addMethod("validphone", function(value, element, param) {
mNum = value.replace(/[^0-9]/g, '');
if(mNum.length != 10)
return false;
else
return this.optional(element) || (mNum.length == 10);
}, jQuery.validator.messages.number);
这似乎可以按预期进行验证,但我找不到将重新格式化的数字放回输入字段的正确方法。逻辑上我认为应该是$(this).val(mNum)代码>但这似乎不起作用。可能由于从验证方法调用而失败
任何想法都将不胜感激 看起来您应该在参数签名中将val()
设置在元素上