JQuery getJSON()有状态码200但不返回数据



我正在尝试从URL加载一些JSON数据以填充表单中的下拉列表。

我正在使用getJSON()函数来获取数据,它已经为其他url工作得很好,但对于这个实例,我不知道为什么它不返回任何东西。


let primaryValue = $("#cr5dd_workrequirement option:selected").val();

if (primaryValue != null && primaryValue != ""){
$.getJSON("/workreq_results?id=" + primaryValue, function (data) {
console.log("data");
});
}

链接工作正常,它是正确的。我只是想看看数据是否正确地从URL加载。这是在链接中找到的数据:

{ "results": [ { "DeptID": "cad426c1-eec7-ed11-b597-000d3aa9a09b", "DeptName": "HR ", } ] }

我没有从控制台得到错误,开发工具显示产品文件正在加载!我看到的状态是200ok。但是在控制台中没有返回任何数据。会是什么问题呢?

这样写的console.log将返回"data"作为文本而不是变量,尝试使用:

console.log(data);

不是

console.log("data");

我设法看到了这个问题,所以进入浏览器中Dev Tools的Response选项卡,发现的数据似乎是正确的,但仔细看,在JSON的最后一个元素的末尾(在"HR"之后),所以URL中的内容在JSON语法方面是不正确的,因此getJSON无声地失败,没有抛出任何错误。我修改了JSON,现在工作得很好,谢谢。

最新更新