angularJS ng-pattern不起作用

13 浏览
0 Comments

angularJS ng-pattern不起作用

请查看plunker。\nhttp://plnkr.co/edit/DuTFYbLVbPkCIvRznYjG?p=preview\n其中ng-pattern正则表达式不会应用于输入文本字段。\n只有必填验证有效。\nHTML:\n


    
{{data[model.name]}}

\nJS:\n

angular.module("app", []).controller("tableController", function ($scope) {
        $scope.regEx = "/^\\d+$/";
        $scope.data = {};
        $scope.data.one = 234;
        $scope.data.two = 32432;
        $scope.models = [
            { name: "one", caption: "cOne", isDisabled: false, isShow: true, minlength: 2, maxlength: 10, pattern: "/^\d+$/" },
            { name: "two", caption: "cTwo", isDisabled: false, isShow: true, minlength: 2, maxlength: 5, pattern: "/^\d+$/" },
        ];
            });

\n有什么建议吗?\n-谢谢

0
0 Comments

问题的原因是ng-pattern指令无法正常工作。解决方法是将正则表达式赋值修改为上述代码所示的方式。如果使用双引号括起来,它将被视为字符串。

另外,如果要从模型中使用模式,则仍然会遇到相同的问题。可以通过检查上述链接中的示例来解决此问题。

如果模型中仅传递了由用户输入的字符串,而不是正则表达式对象,则该如何处理呢?

0