Переключатель на форме HTML. Переключатель это бокс выбора,
дающий пользователю возможность включать и выключать опцию.
Клиентский объект
Реализован в
JavaScript 1.0
JavaScript 1.1: добавлено свойство type;
добавлены обработчики событий onBlur и onFocus;
добавлены методы blur и focus.
JavaScript 1.2: добавлен метод handleEvent.
Создание
HTML-тэг INPUT с "checkbox" в качестве значения
атрибута TYPE. Для данной формы машина выполнения JavaScript
создаёт соответствующие объекты Checkbox и размещает их в массиве elements
соответствующего объекта Form. Вы получаете доступ к объекту
Checkbox по индексу в этом массиве. Можно индексировать массив по
номеру или (если имеются) по значениям атрибута NAME.
Объект Checkbox это элемент формы и он обязан
быть определён (теперь вроде уже нет - прим перев.) внутри тэга
FORM.
Используйте свойство checked для
специфицирования статуса переключателя (включён он или нет). Свойство defaultChecked
используется для специфицирования статуса переключателя при загрузке или очистке формы.
Кроме того, этот объект наследует методы watch
и unwatch объекта
Object.
Примеры
Пример 1.
Выводится группа из 4 переключателей, которые все по умолчанию отмечены:
<B>Specify your music preferences (check all that apply):</B>
<BR><INPUT TYPE="checkbox" NAME="musicpref_rnb" CHECKED> R&B
<BR><INPUT TYPE="checkbox" NAME="musicpref_jazz" CHECKED> Jazz
<BR><INPUT TYPE="checkbox" NAME="musicpref_blues" CHECKED> Blues
<BR><INPUT TYPE="checkbox" NAME="musicpref_newage" CHECKED> New Age
Пример 2.
Форма из 3 текстовых полей и одного переключателя. Можно использовать checkbox
для конвертирования текста текстовых полей в верхний регистр. Каждое текстовое
поле имеет обработчик
onChange, который конвертирует значение поля в верхний регистр, если checkbox
помечен. Переключатель имеет обработчик onClick, который конвертирует
все поля в верхний регистр, если пользователь отметит переключатель.
Если переключатель отмечен по умолчанию, значение свойства
defaultChecked - true; иначе - false. defaultChecked первоначально отражает использование атрибута CHECKED
в тэге INPUT; однако установка defaultChecked
переопределяет значение атрибута CHECKED.
Вы можете установить свойство defaultChecked
в любой момент. Вид переключателя не изменяется после установки свойства defaultChecked,
это происходит только при установке свойства checked.
Каждый элемент формы имеет свойство form, которое является ссылкой на родительскую форму.
Это свойство используется в обработчиках событий, где Вам может понадобиться
обратиться к другому элементу текущей формы.
Если несколько объектов формы имеют одно значение
атрибута NAME, автоматически создаётся массив с данным именем. Каждый элемент этого массива
представляет отдельный Form -объект. Элементы индексируются в порядке их появления в коде,
начиная с 0. Например, если два элемента Text
и элемент Button в одной форме имеют атрибут NAME со значением
"myField", создаётся массив из элементов myField[0],
myField[1] и myField[2]. Вы должны учитывать такую
ситуацию при создании кода и знать, ссылается myField на
единственный элемент или на массив элементов.
Примеры
Функция valueGetter использует цикл for для итерации
по массиву элементов формы valueTest. Окно msgWindow
отображает имена всех элементов формы:
newWindow=window.open("http://home.netscape.com")
function valueGetter() { var msgWindow=window.open("")
for (var i = 0; i < newWindow.document.valueTest.elements.length; i++) {
msgWindow.document.write(newWindow.document.valueTest.elements[i].name
+ "<BR>") } }
type
Для всех объектов Checkbox значением свойства type
будет "checkbox". Это свойство специфицирует тип элемента формы.