jQuery检查返回的数据对象是否为空

时间:2010-04-07 02:02:49

标签: javascript jquery jquery-validate

$("#post").live("click",function()
{
    $("input:checkbox[name='bookmarkid']:checked").each(function()
    {
         $.post("php/socialbookmark-post.php", {bookmarkID: $(this).val()},function(data)
         {
              if(data != "") alert(data);
         });
    });
});
只有出现问题时,php文件才输出一些文本。如果数据为空并且显示空消息,则检查失败。我需要解决这个问题。有什么想法吗?

3 个答案:

答案 0 :(得分:8)

您可以检查数据是否存在,如下所示:

if(data && data !="") alert(data);

data在您的情况下为nullnull != "",因此if正在传递。

答案 1 :(得分:0)

如果数据为空,则检查条件data !== ''将生成错误

if(data !== 'undefined' && data !== ''){
console.log('data is not empty')
} else {
console.log('data is empty')
}

答案 2 :(得分:0)

我也面临同样的问题。如果未从ajax返回数据,则不会执行数据块。但是通过引用jQuery Ajax文档找到解决方法:

http://api.jquery.com/jQuery.ajax/

通过实现,我们使用了done的sucess方法,如果没有返回数据,它将不会被执行。相反,将调用fail方法。请参阅

fail(function())