结合10位数电话号码的功能 - 没有空格

时间:2012-11-02 17:58:59

标签: jquery-validation-engine

尝试使用10位数的电话号码验证,没有空格或除数字以外的任何其他字符。我认为我有正确的reg ex,但我不确定如何实现代码,所以它也适用于NO空格。

到目前为止我做了什么:在jquery.validationEngine-en.js中添加

// ADDED for 10 digit phone
"phone10": {
  "regex": /^[\d ]+$/, 
  // alertText brings up two error messages so using alertText2
  "alertText2": " numbers only: xxxxxxxxxx", 
},

然后我在jquery.validationEngine.js中添加了phone10 case语句:

case "phone10":
  errorMsg = methods._getErrorMessage(form, field, rules[i], rules, i, 
    options, methods._phone10Size);
break;

并将以下函数调用为_phone10Size:

_phone10Size: function(field, rules, i, options) {
  var max = rules[i + 1];
  var len = field.val().length;

  if (len < 10) {
    var rule = options.allrules.phone10;
    return 10 + rule.alertText2;
  }
},

哦是的,我还必须在表单输入字段上输入maxlength =“10”。我知道它不优雅甚至“适当”。有人能告诉我如何实现这10个不允许空格的数字吗?谢谢。

2 个答案:

答案 0 :(得分:7)

找出仅10个数字的解决方案(无空格)。对于我在场上的课,我已经说过:

class="validate[required,custom[onlyNumber],minSize[10],maxSize[10]] text-input"

并将函数OnlyNumber添加到jquery.validationEngine-en.js文件中的第97行:

"onlyNumber": {
    "regex": /^[0-9]+$/,
    "alertText": "* Numbers only"
 },

答案 1 :(得分:0)

您可以使用&#39; number&#39;中的jquery.validationEngine-en.js中的默认验证功能。示例如下所示:

class="validate[required,custom[number],minSize[10],maxSize[12]] text-input"

您可以使用手机功能,如下所示:

class="validate[required,custom[phone]] text-input" type="text"