首页 > 解决方案 > 在Jquery中循环遍历Json对象

问题描述

我正在向我的页面中的 Ajax 函数发送 Json 响应。Json 看起来像这样:

{"one": 21, "two": 10, "three": 19, "four": 100} 

我现在正在创建一个函数来在<h3>标签内显示它。

这是我尝试过的:

$.ajax({
  url: $("#container").attr("data-url"),
  dataType: 'json',
  success: function (data) {
    var results = JSON.stringify(data)
    $('#items').text(results[0]);
    console.log(data)
  }
});

该行$('#items').text(results[0]);是检查我是否可以遍历数组,但不是检索第一条记录,它只检索字符{。我确定这是因为我的实际代码将 json 数据视为字符串,而不是数组,因为JSON.stringify.

如何再次将其转换为数组,以便我可以循环遍历它并执行一些其他操作?

标签: javascriptjqueryjsonajax

解决方案


你有一个对象,而不是一个数组。在 jQuery 中,您可以使用$.each().

$.ajax({
  url: $("#container").attr("data-url"),
  dataType: 'json',
  success: function (data) {
    $.each(data, function(key, val) {
        console.log(`${key} = ${val}`);
    });
  }
});

推荐阅读