Я пытаюсь проверить ввод символов с ограничениями. Поле ввода принимает только символы алфавита, тире и подчеркивания.Как использовать ngPattern для проверки ввода, содержащего ограниченные символы?
Когда я тестирую код ниже, первый символ принимается, а второй вызывает ошибку шаблона.
Мой RegEx: /^ [A-Za-Z _-] $/
HTML код:
<input ng-model="inputText" name="inputText" required md-maxlength="{{options.maxTextLength}}" md-autofocus ng-keypress="keypress($event)" ng-change="textChanged()" ng-pattern='/^[a-zA-Z_-]$/'>
<div ng-messages="inputTextForm.inputText.$error">
<div ng-message="required">Input is required.</div>
<div ng-message="md-maxlength">Input has reached the maximum characters allowed.</div>
<div ng-message="pattern">Invalid characters.</div>
</div>
Этот код находится в угловом Материал Dialog (v1.0.9)
Большое спасибо! –
У меня есть вопрос, может быть, вы можете ответить. Этот ng-шаблон должен быть динамическим и задаваться контроллером в зависимости от контекста. Если я попытаюсь связать это регулярное выражение, это не сработает. Если я удаляю косую черту, он работает ... –
Вы можете сделать это как: '', где 'pattern' помещается в область с помощью контроллера. См. Https://jsfiddle.net/xsvpmp6c/ –