Книга: JavaScript. Подробное руководство, 6-е издание

FormControl

FormControl

общие особенности всех элементов форм

Большинство элементов HTML-форм являются элементами <input>, но формы могут также содержать элементы <button>, <select> и <textarea>. Данная справочная статья описывает общие особенности всех этих элементов. Введение в HTML-формы приводится в разделе 15.9, а дополнительную информацию о формах и об элементах форм можно найти в справочных статьях Form, Input, Select и TextArea.

Элементы <fieldset> и <output> реализуют большинство, но не все, свойства, описываемые здесь. Данный справочник классифицирует объекты FieldSet и Output как подтипы объекта FormControl, хотя они реализуют не все свойства.

Данная справочная статья описывает некоторые особенности форм (такие как проверка данных формы), введенные спецификацией HTML5, которые на момент написания этих строк были реализованы не во всех броузерах.

Свойства

boolean autofocus

Значение true, если элемент должен автоматически получать фокус ввода сразу после загрузки документа. (Элементы FieldSet и Output не реализуют это свойство.)

boolean disabled

Значение true, если элемент формы находится в неактивном состоянии. Неактивные элементы не откликаются на ввод пользователя и не подвергаются проверке. (Элементы Output не реализуют это свойство; элементы FieldSet используют его для управления активностью всех элементов, содержащихся в них.)

readonly Form form

Ссылка на элемент Form, который является владельцем данного элемента, или null, если таковой отсутствует. Если элемент формы находится внутри элемента <form>, эта форма является его владельцем. В противном случае, если элемент формы имеет HTML-атрибут form, определяющий значение атрибута id элемента <form>, владельцем элемента будет указанная форма.

readonly NodeList labels

Объект, подобный массиву, содержащий элементы Label, связанные с элементами этой формы. (Объекты FieldSet не реализуют это свойство.)

string name

Значение HTML-атрибута name для данного элемента формы. Имена элементов форм можно использовать в качестве имен свойств элемента Form: значениями таких свойств являются элементы форм. Имена элементов форм также можно использовать для идентификации данных при отправке формы.

string type

Для элементов <input> свойство type имеет значение атрибута type или значение «text», если атрибут type не указан в теге <input>. Для элементов <button>, <select> и <textarea> свойство type имеет значение «button», «select-one» (или «select-multiple», если установлен атрибут multiple) и «textarea», соответственно. Для элементов <fieldset> свойство type имеет значение «fieldset», а для элементов <output> - значение «output».

readonly string validationMessage

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

readonly FormValidity validity

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

string value

Каждый элемент формы имеет строковое свойство value, которое используется при отправке формы. Для текстовых элементов форм значением этого свойства является текст, введенный пользователем. Для кнопок - значение HTML-атрибута value. Для элементов Output это свойство подобно свойству textContent, унаследованному от объекта Node. Элементы FieldSet не реализуют это свойство.

readonly boolean willValidate

Это свойство имеет значение true, если элемент формы подвергается проверке, и false - в противном случае.

Обработчики событий

Элементы форм определяют следующие свойства обработчиков событий. Обработчики можно также регистрировать с помощью методов интерфейса EventTarget, который реализуют все элементы:

Обработчик событий -  Когда вызывается

onformchange - Когда в любом элементе формы возбуждается событие «change», форма рассылает невсплывающее событие «formchange» всем своим элементам. Элементы форм могут использовать это свойство для определения факта изменений в соседних элементах формы.

onforminput - Когда в любом элементе формы возбуждается событие «input», форма рассылает невсплывающее событие «forminput» всем своим элементам. Элементы форм могут использовать это свойство для определения факта изменений в соседних элементах формы.

oninvalid - Если в ходе проверки выяснится, что элемент формы содержит некорректные данные, в нем будет возбуждено событие «invalid». Это событие не всплывает, но если его отменить, броузер не выведет сообщение об ошибке для этого элемента.

Методы

boolean checkValidity()

Возвращает true, если элемент формы содержит корректные данные (или если этот элемент не подвергается проверке). Иначе возбуждает событие «invalid» в данном элементе и возвращает false.

void setCustomValidity(string error)

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

Оглавление книги


Генерация: 0.286. Запросов К БД/Cache: 2 / 1
поделиться
Вверх Вниз