我正在尝试在内部显示getJSON函数的结果
<ul>
<li> item 1 link</li>
<li> item 2 link</li>
<li>item 3 link </li>
... etc.
</ul>
我尝试过的是:
$.getJSON($URL, function(data) {
var array = $.map(data, function(item) {
return {
title: item.title,
id: item.id
};
});
for (var i = 0; i < 11; i++) {
$('#related-sites').append("<li>"+array.title+"</li>");
}
});
但是我遇到了“未定义”错误://请帮忙!
答案 0 :(得分:2)
我不明白为什么您需要$.map
,也为什么不对具有魔术值的索引进行硬编码循环,为什么您在array.title
上也错过了索引,请尝试以下方法:>
$.getJSON($URL, function(data) {
var iHtml = '';
$.each(data, function(i, item) {
iHtml += '<li>' + (item.title || '') + '</li>';
});
$('#related-sites').append(iHtml);
});
已编辑:
我只需要获得前十项
$.getJSON($URL, function(data) {
var iHtml = '';
$.each(data, function(i, item) {
if(10 <= i) return false;
iHtml += '<li>' + (item.title || '') + '</li>';
});
$('#related-sites').append(iHtml);
});
答案 1 :(得分:1)
您正在寻找数组的属性title
...而不是数组中的特定项目
更改
$('#related-sites').append("<li>"+array.title+"</li>");
收件人
$('#related-sites').append("<li>"+array[i].title+"</li>");
// ^^^
除了您的地图似乎多余之外,您还可以遍历数据本身并获得相同的结果