我有一个输入,只有在输入长度为11或14时才能验证。 有没有办法在没有创建指令的情况下实现这一目标?
还有一件事:
我使用掩码将输入格式化为:
(当11)
000.000.000-00
(14时)
00.000.000 / 0000-00
模式应该忽略'。'和' /'
感谢。
答案 0 :(得分:1)
尝试使用ng-pattern
/^([0-9]{11}|[0-9]{14})$/
// Code goes here
var app = angular.module('app', []);
app.controller('FirstCtrl', function($scope) {
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="app" ng-controller="FirstCtrl as vm">
<form name="form">
<input type="text" name="name" ng-model="name" ng-pattern="/^([0-9]{11}|[0-9]{14})$/">
<span ng-show="form.name.$error.pattern">Not valid!</span>
</form>
</div>
答案 1 :(得分:0)
在你的标签中试试
ng-pattern="/^[0-9]{1,16}$/" ng-maxlength="16"