【发布时间】:2011-08-31 09:06:44
【问题描述】:
当我的 ajax 请求返回成功时,我要做的是继续将 div 附加到 #ajax_tweets。当前发生的是每次在计时器上运行 ajax 函数并且 ajax 返回成功时,所需的最新 div 正确显示在屏幕上。但是,当它下次运行时,前一个 div 将被覆盖并且也不会附加。要么我附加不正确,要么我不确定......现在让我发疯了一段时间。
提前谢谢你。
我的代码:
$(document).ready(function() {
window.setInterval(ajax_test, 10000);
counter = 0;
function ajax_test() {
$(".tweets").html('Retrieving...');
$.ajax({
type: "POST",
url: "assets/ajax/get_latest_tweets.php",
data: "tid=" + id,
timeout: 20000,
success: function(msg) {
if (msg != "") {
add_to_tweet_feed( msg );
id++;
alert(id + msg);
}
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
$(".tweets").html('Timeout contacting server..');
}
});
}
function add_to_tweet_feed ( msg ) {
$("#ajax_tweets").append(msg);
}
});
从服务器返回的代码:
<div id="'.$tid.'" class="t_feed">
<div class="calander right">
<div class="calander_month"><span>'.$row['pub_month'].'</span></div>
<div class="calander_day"><span>'.$row['pub_day'].'</span> </div>
</div>
<span class="ajax_tweet bold">'.$row['source'].'</span>
<p>'.$tweet.'</p>
</div><div class="clear_both></div>
前端代码:
<div id="ajax_tweets" class="tweets">
</div>
【问题讨论】:
-
我真的希望有人能修复 SO markdown 代码,以便将制表符转换为空格 :-(
-
那么叫“ajax_tweets”的元素是什么?另一个
<div>?同样,您的服务器返回的“味精”究竟是什么?它只是简单的推文文本,还是周围有标记? -
实际上,如果您始终正确地使用选项卡,它们会很好地工作
-
@emmett 谢谢你打败了我
-
你的元素上是否有 id 为 'ajax_tweets' 的 'tweets' 类?