我有一个php页面,我在json中得到了回复:
[{'com':'something'},{'com':'some other thing'}]
我想循环它并将每个附加到div。
这就是我的尝试:
var obj = jQuery.parseJSON(response);
$.each(obj.com, function(key,value) {
alert(key+':'+value);
}
此警报为undefined
,响应为json数组..
请帮忙。
答案 0 :(得分:45)
您的数组具有存储对象{'com':'some thing'}
的默认键(0,1)
使用方法:
var obj = jQuery.parseJSON(response);
$.each(obj, function(key,value) {
alert(value.com);
});
答案 1 :(得分:7)
试试这个:
var data = jQuery.parseJSON(response);
$.each(data, function(key, item)
{
console.log(item.com);
});
或
var data = $.parseJSON(response);
$(data).each(function(i,val)
{
$.each(val,function(key,val)
{
console.log(key + " : " + val);
});
});
答案 2 :(得分:2)
您正在迭代undefined
值,即Array对象的com
属性,您应该遍历数组本身:
$.each(obj, function(key,value) {
// here `value` refers to the objects
});
另请注意,jQuery会智能地尝试解析发送的JSON,可能您不需要解析响应。如果您使用的是$.ajax()
,则可以将dataType
设置为json
,告诉jQuery为您解析JSON。
如果仍然无效,请检查浏览器的控制台以进行故障排除。
答案 3 :(得分:2)
var data=[{'com':'something'},{'com':'some other thing'}];
$.each(data, function() {
$.each(this, function(key, val){
alert(val);//here data
alert (key); //here key
});
});
答案 4 :(得分:1)
你可以获得键值对
<pre>
function test(){
var data=[{'com':'something'},{'com':'some other thing'}];
$.each(data, function(key,value) {
alert(key);
alert(value.com);
});
}
</pre>
答案 5 :(得分:1)
试试这个:
for(var i = 0; i < data.length; i++){
console.log(data[i].com)
}
答案 6 :(得分:1)
var data = [
{"Id": 10004, "PageName": "club"},
{"Id": 10040, "PageName": "qaz"},
{"Id": 10059, "PageName": "jjjjjjj"}
];
$.each(data, function(i, item) {
alert(data[i].PageName);
});
$.each(data, function(i, item) {
alert(item.PageName);
});
否则你可以试试这个方法
var data = jQuery.parseJSON(response);
$.each(data, function(key,value) {
alert(value.Id); //It will shows the Id values
});
答案 7 :(得分:0)
试试这个
var events = [];
alert(doc);
var obj = jQuery.parseJSON(doc);
$.each(obj, function (key, value) {
alert(value.title);
});