Существуют ли какие-либо свойства JavaScript, связанные с проверкой формы веб-браузера в HTML5? - PullRequest
5 голосов
/ 04 ноября 2010

В HTML5 проверка на стороне клиента должна стать задачей веб-браузера с помощью таких атрибутов, как pattern или required.

. Есть ли только CSS-реализация этого (то есть :validи :invalid селекторы, чтобы оставить отзыв пользователю) или есть также реализация JavaScript?

Я думаю о чем-то вроде функции, позволяющей вызывать функцию JavaScript, если пользователь нажимает на кнопку отправить иФорма имеет недопустимые значения.Или флаг, к которому я могу получить доступ в объекте формы, чтобы показать, есть ли у него ошибки или нет.

Спасибо.

Ответы [ 2 ]

6 голосов
/ 04 ноября 2010

Да, так и есть.См. превосходную статью List Apart на эту тему Райана Седдона.Согласно статье, Chrome 4+, Safari 5+ и Opera 9.6+ поддерживают все свойства.(Он также включает пример .)

Цитируя из статьи, вы можете делать такие вещи, как:

input:focus:required:invalid {
  background: pink url(ico_validation.png) 379px 3px no-repeat;
}
input:required:valid {
  background-color: #fff;
  background-position: 379px -61px;
}

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

6 голосов
/ 04 ноября 2010

Да, есть атрибут validity, который вы можете запросить. Смотри http://dev.w3.org/html5/spec/association-of-controls-and-forms.html#dom-cva-validity

Я не знаю, насколько эта поддержка существует в браузерах в настоящее время.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...