Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Сменить обработчик click (https://javascript.ru/forum/events/30427-smenit-obrabotchik-click.html)

floa 03.08.2012 18:52

Сменить обработчик click
 
Здравствуйте.
Есть див в нём 10 потомков дивов с классом(х) по клику на любой из 10 этих потомком происходят некоторые операции (выскакивает форма, из неё данные летят аяксом в базу возвращается id дива на котором кликнули) если всё хорошо то закрашиваем див другим цветом меняя класс на (у).
Выбирая элемент по которому кликнули я делаю обычно
$(".x").click( смотрим на атрибут $(this).attr("id"); потом выскакивает форма и т.д )
.
Проблема в том что когда я меняю класс на (y) я хочу чтобы менялся обработчик.
Но кликая по нему вызывается тот же самый обработчик что и первый раз.
Почему он вызывается если я ему класс сменил на (у),а выборку делаю по $(".x")

Deff 03.08.2012 19:29

floa,
Цитата:

Сообщение от floa
Почему он вызывается если я ему класс сменил на (у),а выборку делаю по $(".x")

Cобытие обработчиком click - привязано к исходному объекту dom, для изменемых элементов в процессе, нун пользоваться on(или для старых JQ - live)

$(".x").live('click' , function() {
   //смотрим на атрибут $(this).attr("id"); 
    //потом выскакивает форма и т.д
});

floa 06.08.2012 11:22

спасибо, всё заработало)


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