тип поля объекта
Есть поле
<input value='пароль' ".$OnFocusPassword." ".$OnBlurPassword.">, где $OnFocusPassword ="onFocus=if(this.value=='пароль'){this.valu e='';this.type='password';}"; $OnBlurPassword ="onBlur=if(this.value==''){this.value='парол ь';this.type='text';}"; Смысл кода: Изначально поле имеет Тип text и внем написано слово "пароль". Когда активизирую поле, то оно пустое и тип должен меняться на "password" - при вводе звездочки. В Опере оно меняется, вот только почемуто становится не активным и приходиться второй раз нажимать на него. В IE вообще не работает. Я особо в ява функциях не силен. Подскажите где я ошибся. |
ИЕ не позволяет менять тип input, если он уже находится в дереве.
Данная задача решается немножко по-другому. Делаются label, которые кладутся поверх input'ов, и при фокусе скрываются. |
Пример можно ?
|
http://www.yandex.ru/
Это не посыл в поиск, это пример реализации. Нужно быть неавторизованным. Можно еще попробовать загрузить страницу с отключенным js. |
Вот так везде работает
$OnFocusPassword ="onFocus=if(this.value=='пароль'){this.valu e=''}"; $OnBlurPassword ="onBlur=if(this.value==''){this.value='парол ь'}"; но он отображает с типом text, а мне надо чтоб сначала text, а при активизации password. Как на ya сделано смотрел, но в виду скромных моих познаниях соотв ничего не понял :) А как спрятать этот элемент метку ? |
Имеется в виду следующее:
<html>
<head>
<style>
label.subtitute {
position: absolute;
padding-left: 5px;
line-height: 22px;
}
</style>
</head>
<body>
<div>
<label onclick="this.style.display = 'none'" class="subtitute" for="password">Password goes here!</label>
<input name="pass" type="password" id="password" size="25" />
</div>
</body>
</html>
Но в этом скрипте нужно доделать кое-что, например - скрывать label по событию focus поля ввода, чтобы он скрывался и при переходу на поле клавишей [Tab]. Ну и отображать label только в случае включенного JavaScript у пользователя (чтоб он не мешал вводу). |
| Часовой пояс GMT +3, время: 06:09. |