如何使用 AJAX 在 jquery 中将返回的 JSON 数组设置为变量

How to set returned JSON Array to variable in jquery using AJAX

本文关键字:JSON 数组 设置 变量 返回 AJAX 何使用 jquery      更新时间:2023-09-26

我正在尝试将返回的JSON数组保存到jQuery中的变量中。我正在寻找解决方案,我找到了这个:

var ajaxjson = [];
    $.ajax({
        async: "false",
        dataType: "json",
        url: "http://localhost:8080/mywebapp/getJSONFromCity",
        data: {miasto: miasto},
        success: function(result) {
            ajaxjson = result;
        }
    });

还有来自这里的解决方案:将 JSON 加载到变量中,在这里 jQuery。将 JSON 作为结果分配给变量对我不起作用:

var json = (function () {
   var json = null;
   $.ajax({
       'async': false,
       'global': false,
       'url': my_url,
       'dataType': "json",
       'success': function (data) {
           json = data;
       }
   });
   return json;
})();

AJAX 调用工作正常,我可以在成功调用中显示我的"结果"数据,但我无法以任何方式将该数据分配给变量。在那之后 AJAX 调用我的 var 仍然是空的,当我试图从中显示一些对象时,例如,如果我尝试记录"json[0].id",我会收到错误" 未捕获的类型错误:无法读取未定义的属性"id"

有什么想法可以解决吗?

try 
'success': function (data) {
json = $.parseJSON(data);
return json;
}