2

すべてのaタグからイベントハンドラー(クリック)のバインドを解除しようとしていますが、どういうわけか機能していません。理由を知っていますか?

// Remove eventhandlers
    row.find('a').each(function(){
        $(this).unbind('click');
        alert($(this).attr("onClick"));
    });

常に現在のonClick関数を出力します。

ありがとう

4

2 に答える 2

4

jQuery.unbind()は、jQueryによって割り当てられ維持されているハンドラーのみを削除します。インラインハンドラーは影響を受けません。

インライン属性を削除する場合は、を使用しますremoveAttr()

row.find('a').each(function(){
    $(this).removeAttr('onClick');
    alert($(this).attr("onClick"));
});

http://api.jquery.com/removeattr/

于 2010-07-29T14:12:17.263 に答える
0
$('a').unbind('click');

また

$('a').each(function() {
  return false;
});
于 2010-07-29T15:42:45.797 に答える