如何使用一个输入控件应用多个ng-pattern

Ash*_*shu 4 angularjs

我正在尝试使用Angularjs在文本框中验证邮政编码和电话号码.但它不起作用

 <input type="text" class="form-control errorfields" id="postalCode"
 name="postalCode" ng-model="postalCode" 
 ng-pattern="/(^(\d{5}(-\d{4})?|[A-CEGHJ-NPRSTVXY]\d[A-CEGHJ-NPRSTV-Z]
  ?\d[A-CEGHJ-NPRSTV-Z]\d)$)||(^[0-9])/"  required>
Run Code Online (Sandbox Code Playgroud)

Bri*_*rds 7

看到这个答案: Angularjs动态ng模式验证

您可以根据验证测试从作用域添加一个返回true或false的函数.以下是一些代码以供查看.有关其他信息,请参阅答案:

控制器:

$scope.postalCodeValidation = (function() {
    var regexp = /^\(?(\d{3})\)?[ .-]?(\d{3})[ .-]?(\d{4})$/;
    return {
        test: function(value) {
            return regexp.test(value);
        }
    };
})();
Run Code Online (Sandbox Code Playgroud)

HTML:

<input type="text" class="form-control errorfields" id="postalCode"
 name="postalCode" ng-model="postalCode" 
 ng-pattern="postalCodeValidation "  required>
Run Code Online (Sandbox Code Playgroud)