从JSON查询显示图像的问题

时间:2014-12-20 07:59:04

标签: jquery html json image

我正在尝试根据我收到的JSON查询的文件字符串显示图像(格式为{“itemIcon”:“http://www.example.com/image.png”}。

我收到的错误是:

[Error] TypeError: http://www.example.com/image.png is not a valid argument for 'in'     (evaluating '( length - 1 ) in obj')
isArraylike (jquery-1.10.2.js, line 997)
each (jquery-1.10.2.js, line 632)
(anonymous function) (main.js, line 9)
fire (jquery-1.10.2.js, line 3048)
fireWith (jquery-1.10.2.js, line 3160)
done (jquery-1.10.2.js, line 8235)
callback (jquery-1.10.2.js, line 8778)

我的js如下:

function getItemIcon (itemID)
{
var jsonURL = 'http://example.com/rest/XXXX/items/' + itemID + '?fields=
itemIcon&id_Field=itemID&app_name=XXXX';

$.getJSON(jsonURL, function(json)
{
    var imgURL = "";

    $.each(json.itemIcon, function() {
        imgURL += '<li><img src= "' + this.imgURL + '"></li';
    });
})
}

HTML部分如下所示:

<body onload="getItemIcon('1')">

<div id="itemIcon">here</div>

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

json.itemIcon是表示图片网址的字符串,因此$.each(json.itemIcon正在尝试遍历该字符串中的每个字母并抛出错误

除非你有一个未显示的对象数组,否则你不需要each

这应该基于给出的信息

var imgURL = '<li><img src= "' + json.itemIcon + '"></li>';