我有一个例子。
<input type="text" id="openDate" name="openDate" ng-model="ngModel" required="" ng-minlength="1" ng-maxlength="10" ng-pattern="/^[0-9,/]+$/">
当ng-pattern catch错误时,它会在输入元素上绘制红色。
所以我想抓住这个错误并显示标题消息:“此字段为失败格式。”
如何做到这一点?
答案 0 :(得分:0)
您可以使用directive来抓住它。
因此,在您的HTML中,您将创建一个新属性,而不是使用ng-pattern。在这种情况下,我称之为ng-attr-mynewpattern。
<input type="text" ng-model="opendate" ng-minlength="1" ng-maxlength="10" ng-attr-mynewpattern="/^[0-9,/]+$/">
然后,添加指令。请注意,您剥离了&#34; ng-attr&#34;。在指令中,我在范围中设置元素和模式。这应该可能会变得更强大,但我想让这个例子保持简单。
app.directive("mynewpattern", function () {
return {
restrict: "A",
link: function (scope, el, attrs) {
scope.pattern = attrs.mynewpattern;
scope.el = el;
}
};
});
这里是一个jsFiddle:http://jsfiddle.net/tonyzampogna/6Vj7p/