【发布时间】:2012-03-12 22:07:28
【问题描述】:
我有几个这样的 div:
测试 测试 测试 测试我正在添加一个新的 div:
function ajax() {
$.ajax({
url: '/test/',
type: 'GET',
dataType: "json",
processData: false,
success: function(data) {
var firstDiv = $('.test').find("div:first");
var lastId = firstDiv.attr("id");
console.log(lastId);
var out = '';
$(data).each(function(i) {
messageid = data[i].messageid;
message = data[i].message;
if (messageid != lastId){
if(null != message)
{
out += '<div id="'+ messageid +'"</div>';
$('.test').append(out);
}
}
});
}
});
window.setTimeout("ajax()",1000);
}
基本上,如果essageid != lastId 并且有一个message 将一个带有id 的新div 附加到主test div。
firstDiv 假设获取第一个 div 的 id 值,它确实可以,但是一旦新的 div 带有新消息 firstDiv 不会更新到新的 id 值,而是保留旧的.
知道如何始终获取最后一个 div id 的最后一个值,即使新 div 是即时添加的?我不知道如何在这里使用live() 或delegate()。
谢谢
【问题讨论】:
标签: javascript ajax delegates jquery