我已经创建了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,以便在数据每天都会发生变化的日期之前动态获取数据,就像我在上面写的数据一样? 谢谢你......
答案 0 :(得分:3)
您的示例数据需要考虑一些事项,但在您的情况下,以下内容可以解决这个问题:
var importantObject = data.items[0];
for(var item in importantObject ){
var theDate = item;//the KEY
var theNumber = importantObject[item];//the VALUE
}
但是这一切意味着什么?......
首先,我们需要获取我们想要使用的对象,这是在{ }
(表示对象)之间找到的日期/数字列表 - 数组定义为{{ 1}}。通过给出的示例,可以这样实现:
[ ]
因为var importantObject = data.items[0];
是一个数组,我们想要的对象是该数组中的第一个项目。
然后我们可以使用foreach技术,它有效地迭代对象的所有属性。在此示例中,属性是日期值:
items
因为我们正在迭代属性,for(var item in importantObject ){ ... }
将是属性值(即日期位),所以item 是日期值:
item
最后我们得到数字部分。我们可以使用属性索引的字符串值(相对于对象)来访问任何给定对象属性的值,如下所示:
var theDate = item;//the KEY
如果你已经知道你希望该值的日期,那么你可以像这样直接访问它:
var theNumber = importantObject[item];//the VALUE
答案 1 :(得分:1)
您可以使用jQuery each function执行此操作。例如:
$.each(data, function(k, v) {
// Access items here
});
其中k
是关键,v
是当前处理的商品的价值。
答案 2 :(得分:1)
在items
$.each(data.items[0], function (key, value) {
console.log(key + ": " + value);
var date = key;
var number = value;
});
答案 3 :(得分:1)
//获取您的详细信息。
var detail = data.items [0];
$。each(detail,function(key,val){
console.log(key + ": " + val);
}