ライブ オペレーターを介して、クリック関数を li 要素にバインドします。
$(".UListView li input.iconbutton.click").live("click", function(e){
e.preventDefault();
[...]
$.get("ajax/categorylist.php?appendcategories=true&parentcat="+currentid+"&side="+side, function(data){
[...]
});
});
ほぼ 90% のケースで 1 回実行され、すべて問題ありません。ただし、ajax リクエストが 2 回以上実行される場合もあります。
これは、firebug からの出力です: (2 回実行)
jquery.min.js (Zeile 4)
GET htt-p://localhost/request.php?.... 200 OK 11ms
jquery.min.js (Zeile 4)
GET htt-p://localhost/request.php?.... 200 OK 19ms
すべての要素が最悪の場合 6x DOM に追加されるため、これは私のレイアウトを完全に壊します。
この動作の理由を知っている人はいますか? または、「DOM への追加」コードが複数回実行されるのを修正することをお勧めします。