私はJSON
データ(オブジェクトの配列)を返すajaxリクエストを受け取りました。 この配列を反復すると、リンクのリストが生成されます。 onClick
イベントを設定し、ajaxレスポンスのparamsで関数を呼び出したいと思います。それはとてもここでは、明確ではないに聞こえるかもしれJavaScript:動的に生成されたjQueryの.click()関数で関数のパラメータを送信する方法は?
は一例です:私の機能test
で
function test(param1) {
// ...
}
$.ajax({
url: 'getSomeData.php',
type: 'post',
data: data,
success: function(result){
var result = JSON.parse(result);
$div = $('<div />');
for (i in result.someObject) {
$div.append('<a href="#" id="linkID' + i + '">ajax link ' + i + '</a>');
$('#linkID' + i).click(function(){
test(result.someObject[i]); // <--- My question is here
return false;
});
}
$(document.body).append($div);
}
});
私は常に反復配列の最後のオブジェクトを取得します。なぜこのようなことが起こったのか考えていますが、修正方法はわかりません。
@Anonymooseで「イベント・データを渡す」の項を参照してください。それが宣言されていれば、まったく同じように失敗するでしょう。 – Alnitak