1

一直在尝试使用 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 位数字,但不允许空格?谢谢你。

4

2 回答 2

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"
 },
于 2012-11-09T18:25:44.197 回答
0

您可以使用下面显示的“数字”示例在 jquery.validationEngine-en.js 中使用默认验证函数:

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

您可以使用电话功能,如下所示:

class="validate[required,custom[phone]] text-input" type="text" 
于 2018-06-13T06:34:53.537 回答