数组列表在线显示json的一个结果

时间:2018-07-20 15:44:05

标签: javascript jquery arrays json

我写了这段代码,它可以工作:

function getJsonResult(retrieve) {
  var result = retrieve.results;     
  for (var i = 0; i < result.length; i++) {
    responseJson.push({ id: result[i].id, title: result[i].title });
    var search = '<a id="' + result[i].id + '">' + result[i].title + '</a><br/>';
    document.write(search);
  } 
}

当我尝试在div中显示结果时,我用以下一行更改最后一行:

$("#divId").html(search);

但是它仅显示第一个结果。如何显示整个列表?

2 个答案:

答案 0 :(得分:1)

发生这种情况是因为您在每次迭代中都覆盖了search变量:

var search = '<a id="' + result[i].id + '">' + result[i].title + '</a><br/>';

您需要在循环外声明search变量,然后在每次迭代中附加字符串:

function getJsonResult(retrieve) {
  var result = retrieve.results;  
  var search = "";
  ___________^^^^
  for (var i = 0; i < result.length; i++) {
    responseJson.push({ id: result[i].id, title: result[i].title });
    var search += '<a id="' + result[i].id + '">' + result[i].title + '</a><br/>';
    ___________^^
    document.write(search);
  } 
}

最后,您可以将变量内容放入div中:

$("#divId").html(search);

答案 1 :(得分:0)

$('#divId').append(search);

这会将搜索中包含的

元素附加到div元素。