php - jQuery 循环 JSON 数据

标签 php jquery json jsonp

我已经创建了 API 来从我的服务器检索数据,然后我获取如下 json 格式的数据:

{
"items": [
    {
        "2013-03-28": 1771,
        "2013-03-29": 1585,
        "2013-03-30": 1582,
        "2013-03-31": 1476,
        "2013-04-01": 2070,
        "2013-04-02": 2058,
        "2013-04-03": 1981,
        "2013-04-04": 1857,
        "2013-04-05": 1806,
        "2013-04-06": 1677,
        "2013-04-07": 1654,
        "2013-04-08": 2192,
        "2013-04-09": 2028,
        "2013-04-10": 1974,
        "2013-04-11": 1954,
        "2013-04-12": 1813,
        "2013-04-13": 1503,
        "2013-04-14": 1454,
        "2013-04-15": 1957,
        "2013-04-16": 1395
    }
  ]
}

如何使用 jQuery 动态循环 json 数据? 我的代码:

<html>
<head></head>
<body>
<script src="jquery-1.9.1.js"></script>
<script>
   $(document).ready(function() {
    $.ajax({
        type : "GET",
        url: "myurl.php",
        cache: false,
        dataType: "jsonp",
        success:function(data){
            if(data==''){
                alert('Fail');
            }else{
                alert('Success');   
            }
        }
    })
  });
</script>
</body>
</html>

如何修改 jQuery 以在数据每天更改的日期之后动态获取数据,如我在上面编写的数据示例中所示? 先谢谢了...

最佳答案

您的示例数据需要考虑一些事项,但就您的情况而言,以下内容即可解决问题:

var importantObject = data.items[0];
for(var item in importantObject ){
    var theDate = item;//the KEY
    var theNumber = importantObject[item];//the VALUE
}

Here is a working example

但这一切意味着什么?...

首先,我们需要获取我们想要使用的对象,这是在 { } (这意味着一个对象)之间找到的日期/数字列表 - 一个数组是定义为[]。根据给出的示例,可以这样实现:

var importantObject = data.items[0];

因为 items 是一个数组,而我们想要的对象是该数组中的第一项。

然后我们可以使用 foreach 技术,它可以有效地迭代对象的所有属性。在此示例中,属性是日期值:

for(var item in importantObject ){ ... }

因为我们正在迭代属性,所以 item 将是属性值(即日期位),因此 item 日期值:

var theDate = item;//the KEY

最后我们得到了数字部分。我们可以通过使用属性索引(相对于对象)的字符串值来访问任何给定对象属性的值,如下所示:

var theNumber = importantObject[item];//the VALUE
<小时/>

如果您已经知道想要哪个日期的值,那么您可以直接访问它,如下所示:

var myValue = data.items[0]["2013-04-16"];//myValue will be 1395 in this example

关于php - jQuery 循环 JSON 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16036252/

相关文章:

javascript - Angularjs ng-value for boolean in select 不工作

jquery - 如何从jquery可排序连接列表中删除重复项?

jQuery cookie if 语句

javascript - 延迟 for 循环内的 javascript 代码执行

python - 如何在 requests.api.request 的 params 中传递字典?

javascript - 为 Google Charts 返回具有日期类型的 JSON 数组

php - 如何强制 Laravel 项目对所有路由使用 HTTPS?

php - 使用 PHP 创建搜索数据库表单

php - APE服务器: How to configure SSL?

json - 使用异步线程时, Realm 数据库大小变为 x100