Текстовое поле на HTML-форме, которое прячет своё содержимое, отображая
звёздочки (*). Когда пользователь вводит текст в это поле, звёздочки (*) скрывают введённое.
Клиентский объект
Реализован в
JavaScript 1.0
JavaScript 1.1: добавлено свойство type; добавлены обработчики
событий onBlur и onFocus.
JavaScript 1.2: добавлен метод handleEvent.
Создание
HTML-тэг INPUT со значением "password" в атрибуте TYPE.
Для данной формы машина выполнения JavaScript создаёт соответствующие объекты Password
и помещает эти объекты в массив elementсоответствующего объекта Form.
Вы получаете доступ к Password-объекту по индексу в этом массиве.
Можно индексировать массив числами или, если имеются, значениями атрибута NAME.
Объект Password это элемент формы, и он обязан быть определён внутри тэга FORM.
Безопасность
Версии JavaScript 1.2 и позднее.
Свойство value возвращается в виде обычного
текста и не имеет ассоциированной с ним системы безопасности. Будьте внимательны
при использовании этого свойства и исключите хранение его в куке.
JavaScript 1.1.
Если пользователь интерактивно модифицирует поле password, Вы не можете
вычислить его точно при включённом разрушении данных. О разрушении данных см. книгу Клиентский JavaScript. Руководство.
Начальное значение defaultValue равно null (из соображений
безопасности), независимо от значения атрибута VALUE.
Установка defaultValue программно переопределяет начальное значение.
Если Вы программно устанавливаете defaultValue для Password-объекта
и затем вычисляете его, JavaScript возвращает текущее значение.
Вы можете установить свойство defaultValue в любое время. Вид
соответствующего объекта не обновляется при установке Вами свойства defaultValue,
это делается только при установке свойства value.
Используйте метод focus для перехода к полю password и передачи ему
фокуса. Вы можете затем программно ввести значение в это поле или дать
пользователю возможность сделать это.
Пример
Здесь функция checkPassword подтверждает ввод пользователем
верного пароля. Если пароль неправильный, метод focus возвращает
фокус Password-объекту, а метод select выделяет его,
чтобы пользователь мог повторно ввести пароль.
function checkPassword(userPass) { if (badPassword) { alert("Please enter your password again.") userPass.focus() userPass.select() } }
Здесь предполагается, что Password-объект определён так:
Каждый элемент формы имеет свойство form, которое является ссылкой
на родительскую форму элемента. Это свойство используется в основном в
обработчиках событий, где может понадобиться обратиться к другим элементам текущей формы.
handleEvent
Вызывает обработчик для специфицированного события.
Свойство name первоначально отражает значение атрибута NAME.
Изменение свойства name переопределяет эту установку. Свойство name
не выводится на экран; оно используется для обращения к объекту программно.
Если несколько объектов формы имеют одинаковые значения своих атрибутов NAME,
автоматически создаётся массив этих имён. Каждый элемент этого массива
представляет отдельный Form-объект. Элементы индексируются в
порядке расположения в исходном коде, начиная с 0. Например, если два элемента Text
и элемент Password на одной форме имеют
значение своих атрибутов 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>") } }
Используйте метод select для выделения области ввода поля password.
Вы можете использовать метод select совместно с методом focus
для выделения области ввода и позиционирования на ней курсора.
Примеры
Здесь функция checkPassword проверяет правильность введённого
пользователем пароля. Если пароль неверен, метод select выделяет
поле, а метод focus возвращает ему фокус, так что пользователь может повторно ввести пароль.
function checkPassword(userPass) { if (badPassword) { alert("Please enter your password again.") userPass.focus() userPass.select() } }
Здесь предполагается, что Password-объект определён так:
Версии JavaScript 1.2 и позднее.
Это свойство возвращается обычным текстом и не имеет ассоциированной с ним
системы безопасности. Будьте внимательны при использовании этого свойства и исключите его хранение в куке.
JavaScript 1.1.
Это свойство разрушено по умолчанию. Если Вы программно установили свойство value
и вычисляете его, JavaScript возвращает текущее значение. Если пользователь
интерактивно модифицирует значение поля password, Вы не сможете точно вычислить
его, если разрушение данных включено. О разрушении данных см. книгу Клиентский JavaScript. Руководство.
Описание
Эта строка представляется как серия звёздочек в поле Password-объекта.
Значение этого свойства изменяется, если пользователь или программа модифицирует
это поле, но это значение всегда отображается звёздочками.