Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Действие встроенного автокомплита input (https://javascript.ru/forum/jquery/13514-dejjstvie-vstroennogo-avtokomplita-input.html)

tazododu 01.12.2010 15:59

Действие встроенного автокомплита input
 
Всем привет!
Подскажите пожалуйста, какое действие происходит когда человек при заполнении инпута выбирает что-либо из предложенного встроенным в браузер автокомплитером?
Например, когда вводишь логин(для входа в почту) браузер предлагает ранее введенные логины.
Возможно такого нет в jQuery и кто-то знает как это сделать без фреймверка.
В общем погуглил, ничего не нашел, вся надежда на вас:))

Nightmare 06.12.2010 14:30

autocomplete="off" - "on"
но, валидатор не приймет это!

tazododu 07.12.2010 12:22

ну эт я знаю, но вот как отловить когда юзер что-то выбирает из этого списка?

Skipp 07.12.2010 13:53

tazododu,
никак, для этого создаётся свой список.

А зачем вам это, есть предположение что вы просто не правильно понимаете поставленную перед вами задачу, пошли не тем путём так сказать?

tazododu 07.12.2010 20:36

у меня имеется форма логина. 2 инпута
в одном написано - Логин
в другом - Пароль
Когда ставишь курсор в поле текст исчезает(в выбрано инпуте).
По событию блур проверяю если пользователь ничего не написал возвращаю исходный текст.
Но если пользователь выбирает с встроенного автокоплитера свой логин(если он уже был когда-либо на сайте) в поле Пароль автоматом подставляется пароль(в виде стандартных значков поля пасворд). Так вот вся сложность в том, что после этого действия текст Пароль так и остается в поле инпута пасворд. Текст Пароль накладываю как лейбл на поле инпута пасворда.

<div>
  <input type="text" value="Логин" id="login_" name="login">
</div>

<div>
  <input type="password" id="pass_field" name="pass" >
  <label id="pass_">Пароль</label>
</div>


$("#login_").focus(function(){
	$(this).val("").css("color", "#000");
})
$("#login_").blur(function(){
	if($(this).val() == '')
		$(this).css("color", "#CCC").val("Логин");
})
$("#pass_").click(function(){
	$(this).css("display","none");
	$("#pass_field").focus();
})
$("#pass_field").blur(function(){
	if($(this).val() == '')
		$("#pass_").css("display","block");
})
$("#pass_field").focus(function(){
	$("#pass_").css("display","none");
})
$(document).ready(function(){
	if($("#pass_field").val() == '')
		$("#pass_").css("display","block");
})



может я не с той стороны подошел к решению задачи?

Skipp 08.12.2010 09:24

Вам возможно поможет событие onchange
Или просто autocomplete="off" , как уже советовали.


Часовой пояс GMT +3, время: 15:23.