我对此代码有疑问:
setInterval(function() {
var timed = $("#chMsgCont").find(".chatMsg:last-child");
var timee = timed.attr("data");
$.ajax({
url: "./ajax/checknew.php",
data: {timestamp: timee},
success: function(data) {
$("#chMsgCont").append(data);
if(data != null) {
var div = $('#chMsgCont');
var o = div.offset().top;
div.scrollTop( o + 12302012 );
}
}
});
},1000);
即使数据为空,$("#chMsgCont)
向下滚动,为什么?
答案 0 :(得分:1)
以这种方式尝试:
if(data)
或者这样:
if(data != null && data != "")
基本上,在这些情况下,if(data)
被视为数据错误:
数据是“”或“=”>空字符串
数据为假
数据为空
数据未定义
答案 1 :(得分:0)
data
只是空的而不是null
(未定义)所以它会通过,尝试在PHP文件中返回额外的内容。
我更喜欢在PHP方面做以下事情:
/* suppose that i am evaluating an insert to my DB */
print(1); //if success
print(0); //if error
然后在javascript方面,执行此操作:
if(data == 1) //means success
如果您没有在PHP方面评估某些内容,请执行以下操作:
if(data != null && data != '')