私はあなたが次のようにjQueryでクリックイベントにバインドできることを知っています:
$('a').click(function(){});
しかし、動的に追加されるhtml要素についてはどうでしょうか。私がdiv
次の内容で持っているとしましょう:
<div>
<a href='location.html'>location</a>
</div>
今私は電話します:
$('a').click(
function(){
console.log("going to " + $(this).attr('href'));
return true;
});
そして、それはうまくいくでしょう。しかし、私が電話する線のどこかにある場合
$('div').("<a href='location2.html'>location2</a>");
そのイベントハンドラーをそのイベントに明示的にバインドしなくても、イベントハンドラーはそれを取得します。
a
新しい要素が追加されたときに再バインドすることは可能ですか?またはさらに良いことに、location.href
プロパティが変更されるたびに、getパラメーターを毎回追加できるようになります。
たとえば、a
要素のクリックイベントにバインドしている場合、イベントハンドラーは次のようになります。
function(){
var newid = parseInt(Obj.Request('pageid'), 10) + 1;
location.href = $(this).attr('href') + '?pageid=' + newid.toString();
return false;
}
Obj.Request
がgetパラメータを返す関数であると仮定します。(私はすでにこれを持っています)。