当我使用ng-pattern进行输入时,无法获得输入长度。第4个元素后可见的长度数。
<label ng-class="username.length ? 'focused': ''"> LabelText </label>
<input type='text'ng-model='username' ng-pattern="/^[a-zA-Z0-9\\_\\-]{4,16}$/" />"
答案 0 :(得分:1)
嗯,你的问题有些令人目不暇接。 :)这是一些用户投票给你的方式。如果您将正则表达式声明从^[a-zA-Z0-9\\_\\-]{4,16}$
更改为<div ng-controller="ExampleController">
<form name="form">
<label for="regex">Set a pattern (regex string): </label>
<input type="text" ng-model="regex" id="regex" />
<br>
<label for="input">This input is restricted by the current pattern: </label>
<input type="text" ng-model="model" ng-class="model.length ? 'error': ''" id="input" name="input" ng-pattern="regex" /><br>
<hr>
input valid? = <code>{{form.input.$valid}}</code><br>
model = <code>Model length: {{model.length}}</code>
</form>
</div>
,则您提供的代码效果很好。请将您的代码与以下工作示例进行比较。
以下是您要实现的工作Fiddle。
var myApp = angular.module('myApp',[]);
myApp.controller('ExampleController', ['$scope', function($scope) {
$scope.regex = '^[a-zA-Z0-9\\_\\-]{4,16}$';
}]);
git reflog