我编写此代码以从数据库中获取新数据,但我不知道此代码有什么问题,以及为什么我在浏览器控制台中收到以下错误。
jQuery代码:
$(document).ready(function() {
setInterval(function() {
var lastdate = $("#countcomment").attr("loadtime");
$.post("update.php",{ajax:"1", lastdate:lastdate},function(data){
if(data.getnew){
$('#countcomment').html(data.getnew);
$('#countcomment').attr('loadtime', ""+data.new)
}
}, "json");
}, 1000);
});
PHP:
$database = $db->super_query("
SELECT count(*) as count
FROM ".PREFIX."_comments
WHERE date >= '$real_date'
");
$newcomments = $database['count'];
if($newcomments > "0"){
echo "{\"getnew\":\"{$newcomments}\",\"new\":\"{$now_date}\"}";
}
HTML:
<span id="countcomment" loadtime="2013"></span>
错误:
Uncaught TypeError: Cannot read property 'getnew' of null
我不知道是什么问题!
答案 0 :(得分:1)
您的服务器可能会发送超出预期的数据(例如错误)。 使用以下js代码检查响应数据:
$(document).ready(function () {
setInterval(function() {
var lastdate = $("#countcomment").attr("loadtime");
$.post("update.php",{ajax:"1", lastdate:lastdate},function(data, status, xhr){
console.log(xhr.responseText)
},"json");
}, 1000);
});
或者您可以在Chrome的开发者工具
中的“网络”标签中看到该数据