2014-10-31 3 views
0

У меня есть пользовательское сообщение об ошибке html5 для ввода, которое изменяет текст ошибки проверки в хроме.Выполнение событий формы с помощью угловой директивы

<input 
    oninvalid="setCustomValidity('It's custom message!')" 
    onchange="try{setCustomValidity('')}catch(e){}"> 

Как я могу это сделать с помощью Угловой директивы?

Обновлено

Допустим, я хочу типа <input custom-validity> вместо этого.

+0

Я не угловая способ полагаться на реализацию браузера, как вы делаете при использовании customValidity , – wvdz

+0

Эй, скажем, я хочу вместо этого ввести ' '. – nikoloza

ответ

1

Вы можете узнать все о верификации формы Углового способа в своем documentation.

Вам не нужно создавать свои собственные директивы, поскольку угловые уже имеют большую поддержку проверки формы, построенную в.

Ниже приведен пример, как использовать $ загрязнена и $ недопустимых атрибуты, чтобы показать или скрыть сообщения проверки , «грязный» означает, что форма была изменена пользователем.

<div ng-app="app"> 
    <form name="myForm" novalidate> 
    <p> 
     <label>Name 
      <input type="text" name="name" ng-model="name" required> 
      <span ng-show="myForm.name.$invalid && myForm.name.$dirty"> 
       Name required 
      </span> 
     </label> 
    </p> 
    <p> 
     <label>Email 
      <input type="email" name="email" ng-model="email"> 
      <span ng-show="myForm.email.$invalid && myForm.email.$dirty"> 
       Put a valid email 
      </span> 
     </label> 
    </p> 
    <input type="submit" value="Submit" ng-disabled="myForm.$invalid"> 
    </form> 
</div> 

Вы также можете стиль действительные/недействительные поля, используя правило стиля, как это:

form input.ng-invalid.ng-dirty { ... } 
+0

Эй, спасибо за ответ, но я использую проверку HTML5 по умолчанию, и этот код предназначен для пузыря браузера, который появляется при возникновении ошибки. этот код изменяет текст по умолчанию для пузыря. Поэтому в настоящее время мне не нужна 'ng validation'. – nikoloza

+0

Точка, которую я пытаюсь сделать, заключается в том, что не в духе углового полагаться на проверку формы html5. Вместо этого угловой позволяет реализовать свою собственную проверку формы, которая будет согласована между браузерами. В моем примере выше вы можете стилизовать сообщения как текстовые пузыри со своим собственным CSS или, возможно, css-framework, например, bootstrap. – wvdz

Смежные вопросы