繁体   English   中英

从ajax调用返回JSON到HTML div

[英]Return JSON from ajax call into HTML div

我有返回json的javascript ajax调用,并且试图将其放在HTML页面上。

我使用以下代码:

      success: function(response) {
        console.log(response);
        for (var i=0;i<response.length;++i)
        {
            $('#main').append('<div class="name">'+response[i].name+'</>');
        }
          },
          error: function(response) {
            alert(response);
          }
        });

但是,它似乎可以将json打印到我的控制台上,但是我什么也没回到网站。

我有一个div将其收集在:

<div id="main">Test</div>

知道我要去哪里错了吗?

编辑:控制台日志响应是这样的:

{totalPages: 0, firstPage: true, lastPage: true, numberOfElements: 0, number: 0, …}
columns: {columnIds: Array(3)}
firstPage: true
lastPage: true
number: 0
numberOfElements: 0
oberonRequestXML: [null]
oberonResponseXML: [null]
summaryData: {totals: Array(3)}
totalElements: 0
totalPages: 0
__proto__: Object

如评论中所述,您的JSON响应不是数组-没有length属性,因此您的循环不会循环。 此外,您似乎期望数组包含具有name属性的对象。 您收到的回复中无处可见。

假设您呼叫的正确的JSON的服务,您可以遍历的唯一信息存储在两个属性: columns.columnIdssummaryData.totals 因此,如果您这样编写代码,您将得到一些东西

console.log(response);
for (var i=0;i<response.columns.columnIds.length;++i) {
    $('#main').append('<div class="name">'
                 + response.columns.columnIds[i] 
                 + ': '
                 + response.summaryData.totals[i] + '</div>');
}

假定这些值是原始值,从您得到的响应中还不清楚。

但是同样,这不会输出name属性值,因为它们不会在您的问题中显示在JSON中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM