检查.getJSON是否返回任何数据

Mar*_*ark 3 ajax jquery jquery-ui knockout.js

我正在尝试使用KnockOutJS和jQuery - 有什么方法可以检查下面的allData,看看它是否返回了什么?

如果没有,我想在屏幕上隐藏div:

$(document).ready(function () {

$("#thankyou").hide(); // hide thank you box

$("#searchBtn").click(function () {

    $.getJSON("/api/searchapi/", function (allData) {
        sampleProductCategories = allData;  // I want to check if this has returned anything?
        if(!allData) { alert("nothing");}
        cart.RoomCategories(sampleProductCategories);
    });
 });
});
Run Code Online (Sandbox Code Playgroud)

Firebug将空JSON显示为:

在此输入图像描述

use*_*654 5

由于您的"空数据"是一个空数组,只需测试它的长度即可.

if (allData.length) {
    // we have data
}
else {
    // we don't have data
}
Run Code Online (Sandbox Code Playgroud)