#jquery #events #event-handling #unbind
#jquery #Мероприятия #обработка событий #отменить привязку
Вопрос:
Я пытаюсь отвязать обработчики событий (щелчок) от всех a-тегов, и почему-то это не работает. Ребята, вы знаете почему?
// Remove eventhandlers
row.find('a').each(function(){
$(this).unbind('click');
alert($(this).attr("onClick"));
});
Он всегда будет выводить текущую функцию onClick.
Спасибо
Ответ №1:
jQuery .unbind()
удаляет только обработчики, назначенные и поддерживаемые jQuery. На ваши встроенные обработчики это не влияет.
Если вы хотите удалить встроенный атрибут, используйте removeAttr()
.
row.find('a').each(function(){
$(this).removeAttr('onClick');
alert($(this).attr("onClick"));
});
Ответ №2:
$('a').unbind('click');
или
$('a').each(function() {
return false;
});