jQuery的迭代JSON对象

问题描述:

您好我有一个JSON数组从服务器返回.. 它看起来是这样的:jQuery的迭代JSON对象

[{ ImageUrl="http://www.google.com"}, { ImageUrl="http://www.bing.com"}] 

我有这样的:

<div id="images"></div> 

和我试着去创造基于数据的图像,但我挣扎着与jquery

$.each(json.imageData.ImageUrl, function (i, ImageUrl) { 
    $("<img/>").attr("src", ImageUrl).appendTo("#images"); 

}); 

我如何使它添加图像es到div?

+0

是,实际的JSON?这是无效的... – lonesomeday 2011-01-07 12:05:44

首先,您的JSON无效。你可以在这里进行验证:http://jsonlint.com

我想你正在尝试做的,是这样的:

[ 
    { 
     "ImageUrl": "http://domain.com/image.jpg" 
    }, 
    { 
     "ImageUrl": "http://domain.com/image2.jpg" 
    } 
] 

通知的双引号是失踪在您的代码。在JSON中,您必须在键和值上使用双引号(从不单引号或不带引号)。其次,你正在尝试迭代值而不是数组。

尝试这样的:

$.each(json.imageData, function (i, img) { 
    $("<img>").attr("src", img.ImageUrl).appendTo("#images"); 
}); 
+0

如果每个项目有更多的价值?例如{“ImageUrl”:“http://domain.com/image.jpg”,“Alt”:“FooBar”} – raklos 2011-01-07 12:13:23