Я рад, если кто-то может помочь мне решить этуstopPropagate() не работает в FF
У меня есть на странице регистрации пользователя с именем пользователя и паролем выбора полей, я обеспечиваю проверку и наличие асинхронно с помощью события слушатели,
//username
$("#username").bind('blur',function(e){
//ajax call
if (e.target == e.currentTarget) {
e.stopPropagation();
e.preventDefault();
}
return false;
});
//userpassword
$("#userpassword").bind('blur',function(e){
//ajax call
if (e.target == e.currentTarget) {
e.stopPropagation();
e.preventDefault();
}
return false;
});
однако на размытие (кольцо) поле ребенка пароль по Ajax вызова на поле имени пользователя также активируется, я подозреваю, что это вопрос пузыриться, но как-то stopPropagate() не работает
// добавление метки вверх
<form action="" method="post" enctype="multipart/form-data" name="form1" id="form1">
<ul>
<li>
<input name="user[name]" type="text" id="username" accesskey="u" value="" maxlength="15" autocomplete="off" class="username" /></li>
<li><input name="user[password]" type="text" id="userpassword" accesskey="p" value="" autocomplete="off" class="userpassword" /></li>
</ul>
</form>
Я сомневаюсь, что это ваша проблема, потому что ваш обработчик событий * также * возвращает 'false'. Возвращение «false» из обработчика имеет тот же эффект, что и вызов «stopPropagation» и «preventDefault», поэтому ваши обработчики всегда будут * останавливать распространение. – Pointy
Возможно, вы можете добавить некоторые из HTML вокруг этих элементов формы. – Pointy
Покажите нам разметку –