Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 23.12.2008, 13:36
Anatoliy
 
Сообщений: n/a

тип поля объекта
Есть поле
<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 вообще не работает.

Я особо в ява функциях не силен. Подскажите где я ошибся.
Ответить с цитированием
  #2 (permalink)  
Старый 23.12.2008, 13:38
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

ИЕ не позволяет менять тип input, если он уже находится в дереве.

Данная задача решается немножко по-другому. Делаются label, которые кладутся поверх input'ов, и при фокусе скрываются.
Ответить с цитированием
  #3 (permalink)  
Старый 23.12.2008, 13:40
Anatoliy
 
Сообщений: n/a

Пример можно ?
Ответить с цитированием
  #4 (permalink)  
Старый 23.12.2008, 13:43
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

http://www.yandex.ru/

Это не посыл в поиск, это пример реализации. Нужно быть неавторизованным. Можно еще попробовать загрузить страницу с отключенным js.
Ответить с цитированием
  #5 (permalink)  
Старый 23.12.2008, 13:45
Anatoliy
 
Сообщений: n/a

Вот так везде работает
$OnFocusPassword ="onFocus=if(this.value=='пароль'){this.valu e=''}";
$OnBlurPassword ="onBlur=if(this.value==''){this.value='парол ь'}";

но он отображает с типом text, а мне надо чтоб сначала text, а при активизации password.

Как на ya сделано смотрел, но в виду скромных моих познаниях соотв ничего не понял

А как спрятать этот элемент метку ?

Последний раз редактировалось Андрей Параничев, 23.12.2008 в 17:06.
Ответить с цитированием
  #6 (permalink)  
Старый 23.12.2008, 17:17
Отправить личное сообщение для Андрей Параничев Посмотреть профиль Найти все сообщения от Андрей Параничев
 
Регистрация: 21.02.2008
Сообщений: 1,250

Имеется в виду следующее:
<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 у пользователя (чтоб он не мешал вводу).
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выплывающие списки и обновление текстового поля Gazprom Элементы интерфейса 5 02.08.2009 11:34
Можно ли получить имя экземпляра объекта внутри самого объекта? Ichigeki Общие вопросы Javascript 9 14.11.2008 19:00
Не работает перебор свойств объекта BANick Общие вопросы Javascript 1 16.09.2008 22:46
Динамическое клонирование поля и AJAX supercelt AJAX и COMET 6 02.09.2008 11:27
как выполнить движение объекта scuter Элементы интерфейса 5 08.06.2008 23:57