Pedido de validação de formulário Angularjs
Eu tenho um formulário html simples que contém entrada de texto regular.ng-minlength
, ng-maxlength
eng-pattern
angulardiretivas de entrada de formulário internas são definidos na entrada.
Problema:ng-pattern
verificação é aplicada antes da verificação de comprimentong-minlength
eng-maxlength
.
Pergunta: como posso alterar a ordem de verificação padrão: ou seja, primeiro verifique o comprimento e aplique a verificação de padrão?
Exemplo:
<body ng-app>
<div>
<form name="myForm">
Name: <input name="name" type="text" ng-model="name" ng-minlength="3" ng-maxlength="16" ng-pattern="/^\w+$/"/>
<div ng-show="myForm.name.$dirty && myForm.name.$invalid">
<span ng-show="myForm.name.$error.pattern">Pattern error</span>
<span ng-show="myForm.name.$error.minlength || myForm.name.$error.maxlength">Length error</span>
</div>
<br/>
<input type="submit" value="Submit">
</form>
</div>
</body>
Comportamento atual:
digite "#" - consulte "Erro de padrão"digite "###" - consulte "Erro de padrão"Comportamento desejado:
digite "#" - consulte "Erro de comprimento"digite "###" - consulte "Erro de padrão"FYI, relacionadojsfiddle.
Desde já, obrigado.