我希望用我的ajax结果替换每个div类中的值,但是我似乎无法在循环期间将我的表结果附加到单个div类。我知道$(this).append(table)
被错误地放置了,因为它不在ajax请求之外。我如何修改它以获得我想要的效果?
我的脚本是这样的:
$('.developer_badgesarea').each(function(){
// get the div class value to perform ajax
var player_id = $(this).html();
var table;
// if condition to conduct ajax
if(player_id != 'None'){
$.ajax({
// ajax stuff here
success: function(result){
//table created here
$(this).append(table);
}
});
}
});
答案 0 :(得分:3)
问题是ajax成功函数中的“this”引用。它引用了回调函数,而不是您希望引用它的dom元素。
$('.developer_badgesarea').each(function(){
// element reference to your div, that you'll access inside your ajax call
var elm = $(this);
// get the div class value to perform ajax
var player_id = elm.html();
var table;
// if condition to conduct ajax
if(player_id != 'None'){
$.ajax({
// ajax stuff here
success: function(result){
//table created here
elm.append(table);
}
});
}
});