如何使用回调函数将jsonp对象附加到html

时间:2014-08-20 07:52:45

标签: jquery json callback append jsonp

我有网络服务,返回我json对象(带回调的jsonp),我需要循环它并将结果显示到我的Html页面。 我得到的结果看起来像这样:

CBGroupSale({
"GroupSales": [{
    "PICTURE": "0F5340E1-A25D-157B-99D2BF64DCF1F05F.jpg",
    "DISPRECENT": 7.0,
    "PRICE": 1640,
    "CLASS": 5,
    "GROUPLEFT": 5,
    "HOTELNAME": "hotel 1"
}, {
    "PICTURE": "9FE127E7-9668-1214-28251C533DD7F657.jpg",
    "DISPRECENT": 25.0,
    "PRICE": 2800,
    "CLASS": 4,
    "GROUPLEFT": 10,
    "HOTELNAME": "hotel 2"
}, {
    "PICTURE": "0F5340E1-A25D-157B-99D2BF64DCF1F05F.jpg",
    "DISPRECENT": 7.0,
    "PRICE": 2680,
    "CLASS": 5,
    "GROUPLEFT": 8,
    "HOTELNAME": "hotel 3"
}]

})

我想在Html <li>标签中显示它。 任何帮助???

2 个答案:

答案 0 :(得分:1)

使用.ajax()只需将其设为JSONP

即可
$.ajax({
   type: 'GET',
    url: url,
    async: false,
    jsonpCallback: 'jsonCallback',
    contentType: "application/json",
    dataType: 'jsonp',
    success: function(json) {
       console.dir(json.sites);
    },
    error: function(e) {
       console.log(e.message);
    }
});

})(jQuery);

来自:http://www.sitepoint.com/jsonp-examples/

答案 1 :(得分:0)

好的,我找到了答案:

$.each(data.GroupSales, function() {
        $('.hotel').append(
            '<tr><td>'
            + this.HOTELNAME
            + '</td><td>'
            + this.PICTURE +
            '</td></tr>'
        );
    });