Я этот код:проблемы с директивой ngPattern
<form name="test">
<input type="text" ng-model="code" name="code" ng-pattern="/^code_[0-9]+$/"/>
<div ng-show="test.code.$dirty && test.code.$invalid">
Error:
<span ng-show="test.code.$error.pattern">Pattern fail.</span>
</div>
</form>
У меня есть 2 проблемы с этим кодом:
строк, как "code_232", "code_232" "code_232" проходит проверку , Я не эксперт с регулярным выражением, так что это может быть проблемой, просто связана с регулярным выражением я писал:
/^code_[0-9]+$/
Если я начинаю писать «code_23892» (правильная строка), я получаю ошибку сообщение в то время как я» м все еще запись (
test.code.$error.pattern = true
). Есть ли встроенный способ избежать этого? Так что мой desidered поведение не является:
Если я пишу «треск», а вход до сих пор фокус: никакая ошибки
Если я пишу «треск», а вход теряет фокус: ошибка.
Если я пишу «a», «ca», «coa» и т. Д .: ошибка, причина, по которой шаблон уже нарушен.
Возможно ли это, или я написал директиву проверки custome для достижения этой цели?
Заранее спасибо.
Я использую AngularJS 1.0.5 (выпущен сегодня) ... ng-trim = «false» не работает – Bruno
Я думаю, что ng-trim является новым в версии 1.1, который, к сожалению, по-прежнему нестабилен. РЕДАКТИРОВАНО: Это в списке изменений 1.1.1 здесь: https://github.com/angular/angular.js/blob/master/CHANGELOG.md#1.1.1 –
+1 Спасибо за вашу помощь! Я буду ждать больше ответов, прежде чем принимать ваш ответ. – Bruno