大家好,我正在尝试阅读一些json并做两件事情。 将一些json数据插入到UL中。第二件事是创建一个函数,可以从锚标签调用并显示其他数据。让我试着解释我的代码。从jquery阅读json
的json看起来像这样
[{lakeName:"Lake 1",lakeCode:"111",Readings[["24-Oct-10",12.5],["24-Oct-10",10.5],["24-Oct-10",15.5],]}{lakeName:"Lake 2",lakeCode:"222",Readings[["24-Oct-10",12.5],["24-Oct-10",10.5],["24-Oct-10",15.5],]}]
我试图填充这样
$(document).ready(function() {
$.ajax({
url: "http://theaboveJSONisreturnedFromMyUrl",
method: 'GET',
dataType: 'json',
success: onDataReceived
});
var data = [];
function onDataReceived(series) {
data = [series];
$(data).each(function (i, data) {
$('#myList').append("<li>" + "<a href=\"javascript:GetLake(" + data.lakeCode + ");\">" + data.lakeName + "</a></li>");
});
}
});
function GetLake(lake) {
alert('some how get the readings for the clicked lake code e.g. lakeCode 111 and display them here ["24-Oct-10",12.5],["24-Oct-10",10.5],["24-Oct-10",15.5]);
}
现在我看到的数据值,我的名单,但是我不能似乎通过例如访问data.lakeCode
我做错了什么?
任何帮助将是伟大的!
乍一看,我猜你在你的JSON中有语法错误。我认为在'Readings'之后缺少':'。这可能是也可能不是全部问题。 – Thomas 2010-10-28 09:46:02
另外'data = [series];'使'series'成为数组'data'中唯一的项。然后您尝试使用'$ .each'遍历数组。这与直接使用'series'完全相同。 – lonesomeday 2010-10-28 09:51:34