从jquery ajax中提取JSON响应到html div

时间:2017-04-05 11:09:05

标签: javascript jquery html json ajax

我无法将数据检索到jquery div元素,但我可以在firebug中看到ajax响应。

[['ab','D','B'],['bc','B','C'],['ca','C','D']]

this is my response.for example my url contains data productCount:64 ,I should extract productCount from ajax success and display it in html div id result

5 个答案:

答案 0 :(得分:1)

当您解析JSOn数据时,您可以这样使用它:

var parsed_data = JSON.parse(JSON_DATA);
$('#result').html(parsed_data.key);

所以如果你的parsed_data有点像:

{name:"test",age:12}

然后你就像使用它一样:

$('#result').html(parsed_data.name); //it will give you test

如果您真的想打印出整个数据,请使用JSON.stringify(obj),如下所示:

$('#result').html(JSON.stringify(parsed_data));

答案 1 :(得分:1)

在你的代码中你返回一个json并且你试图在div中插入div,在div中你只能插入html代码而不是json。

尝试检查你要返回的json,如果你需要将每个元素插入div中,那么就做,但不要为所有人做。

html()方法不知道你要分配什么,它只插入一个html。

答案 2 :(得分:0)

您需要在returnData中迭代您的json数据。你无法将json直接放入html。您需要先转换/解析/迭代它。所以,例如:

$.each(returnedData, function (index, value) {
    // do stuff with it, e. g.:
    //  $('#result').html($('#result').html() + value);
});

答案 3 :(得分:0)

https://jsfiddle.net/m8udusps/

这里的代码实际上有效。但是它说它在解析JSON时存在问题。您需要添加crossDomain: true,才能让它实际获得结果。

答案 4 :(得分:0)

已收到一个假定的JSON结构,如:

{
  "Field1": "value1",
  "Field2": "value2"
}

此代码获取键的值(在此示例中仅是第一个键)。结果是带有Data: value1的警报消息:

                $.ajax({
                    'url' : './localurl',
                    'type' : 'GET',
                    'success' : function(data) {
                        alert("Data: "+data.Field1);
                    },
                    'error' : function(request,error) {
                        alert("Error in response: "+JSON.stringify(data));
                    }
                });

在这种情况下,Field1是接收到的密钥,并且可以直接通过data变量访问,因此不必执行JSON.parse(data)(实际上是JSON.parse产生错误)