Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   .on() и ajax (https://javascript.ru/forum/jquery/45157-i-ajax.html)

Dimanchik87 17.02.2014 12:59

.on() и ajax
 
При добавлении событий на элементы возникающие динамически (ajax) использую
$("body").on("click",".mod_desc",function(){})
,где ".mod_desc" все элементы класса, на который навешивается событие. Всё отлично работает, но чтобы снять событие, нужно написать
$("body").off("click",".mod_desc",function(){})
. Это снимает событие у всех элементов с таким классом, а мне нужно снять только у $(event.target). Замена селектора ".mod_desc" на ''event.target" ничего не даёт....'
Помогите!!!!!

рони 17.02.2014 13:28

Dimanchik87,
а так $(event.target).off("click") ?

danik.js 17.02.2014 13:50

Цитата:

Сообщение от Dimanchik87
''event.target"

Без строки пробуй. Твоя строка как селектор воспринимается, не уж-то не врубаешься? То есть типа элемент <EVENT> с классом target: <EVENT class="target"> у тя такой элемент чтоли на странице есть?

рони 17.02.2014 14:04

Цитата:

Сообщение от danik.js
Без строки пробуй.

:write: без кавычек то есть.

Dimanchik87 17.02.2014 23:26

К сожалению не работает не с кавычками не без....
Буду искать проблему в коде

danik.js 18.02.2014 07:02

Походу не зная селектор нельзя убрать обработчик

рони 18.02.2014 09:10

Dimanchik87,
а не походит ваш алгоритм на работу one?

Dimanchik87 18.02.2014 22:58

решил проблему следующим образом:
1) Занёс навешивание событий, связанных с такими элементами, в функцию
2) По завершению формирования нового документа в callback аякса вызываю эту функцию.

Dimanchik87 18.02.2014 23:01

Цитата:

Сообщение от рони (Сообщение 298162)
Dimanchik87,
а не походит ваш алгоритм на работу one?

неа, не факт, что пользователь вызовет событие лишь 1 раз
там нужно по клику выводить блок с описанием


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