2

我是 jQuery 的初学者,我正在尝试使用该函数解析来自 div$.getJSON的 JSON 数据,但它不起作用。你能告诉我我该怎么做吗?这是我正在使用的代码:

<div id="json">
   {"data":[
     {"a":"b"},
     {"a":"c"}
   ]}
</div>

<script>
$(document).ready(function() { 
    $.getJSON( $("#json").html() , function(json) {
        $.each(json.data, function(index, value) { $('.data').append(value.a+'<br />'); } );
    });
});
</script>

<div class="data"></div>
4

2 回答 2

5

$.getJSON()方法旨在对您的网络服务器进行 Ajax 调用,而不是从页面中获取某些内容。尝试这个:

$(document).ready(function() {
    var data = $.parseJSON($("#json").html());
    $.each(data.data, function(index, value) { $('.data').append(value.a+'<br />'); } );
});

演示:http: //jsfiddle.net/SyHN8/

使用$("#json").html()会将字段的内容作为字符串提供给您,然后您将其传递给$.parseJSON()您可以使用的对象。

于 2012-11-26T11:30:18.587 回答
0

$.getJSON 使用 GET HTTP 请求从服务器加载 JSON 编码的数据。你不能像你一样使用它。

于 2012-11-26T11:29:25.760 回答