我需要用ajax只将新数据加载到我的div中。目前我正在加载所有数据,因为如果我删除数据库中的记录,它也会从我的聊天div中删除它。
这是我的js代码:
var chat = {}
chat.fetchMessages = function () {
$.ajax({
url: '/ajax/client.php',
type: 'post',
data: { method: 'fetch', thread: thread},
success: function(data) {
$('.chat_window').html(data);
}
});
}
chat.throwMessage = function (message) {
if ($.trim(message).length != 0) {
$.ajax({
url: '/ajax/client.php',
type: 'post',
data: { method: 'throw', message: message, thread: thread},
success: function(data) {
chat.fetchMessages();
chat.entry.val('');
}
});
}
}
chat.entry = $('.entry');
chat.entry.bind('keydown', function(e) {
if(e.keyCode == 13) {
if($(this).val() == ''){
} else {
chat.throwMessage($(this).val());
e.preventDefault();
}
}
});
chat.interval = setInterval(chat.fetchMessages, 8000);
chat.fetchMessages();
我已经浏览了一下,有人说如果你将时间戳传递给服务器并以这种方式加载新内容,但我似乎无法理解这一点。如果你需要php,请告诉我。
答案 0 :(得分:2)
是的,所以时间戳最有意义。你需要做一些事情:
url: '/ajax/client.php?timestamp=' + latestFetchTimestamp,