Wikipedia API搜索 - 检索每个数组的相同索引与foreach



我正在为freecodecamp做一个项目,我整天都被困在这一部分。我正在从Wikipedia API中提取数据,并且可以使用它,但是我不确定语法应该如何寻找我要实现的目标。这是指向我正在使用的数据的示例的链接。wikipedia api搜索。

现在,在我的HTML中,我有一个引导模式,在用户将某些内容输入某个表单之后出现,其中列出的组中有一个带有搜索的返回数据的组。

这是我到目前为止的代码。

$(document).ready(function () {

 $('#searchForm').on('submit', function(e) {
   e.preventDefault();
   $('#wikiSearch').modal('show');
   var usersearch = document.getElementById('userinput').value;
   var apiURL = "https://en.wikipedia.org/w/api.php?
   action=opensearch&search=" 
   + usersearch + "&format=json&callback=?";
$.ajax({
  url: apiURL,
  contentType: "application/json; charset=utf-8",
  dataType: 'json',
  type: 'GET',
  success: function (data) {
    data[1].forEach(function(item) {
      $('#results').append("<tr><td><a href='#'>"+item+"</a></td></tr>")
    });
    data[2].forEach(function(item) {
      $('#brief').append("<tr><td>"+item+"</td></tr>")
    })
  }
   });
  });
 });

对于我的HTML模式中的每个组,我想从搜索中显示1个结果。我认为我可以使用嵌套的foreach,但它并没有返回我想要的结果。我已经尝试使用地图,还尝试创建一个长时间的循环嵌套,并且觉得在学习时,我可能会弊大于利,因为我现在只会感到困惑,大声笑。感谢您的任何输入。

显示搜索结果的第一行使用嵌套数组的第一个键:

$('#results').append("<tr><td><a href='#'>" + data[1][0] + "</a></td></tr>")
$('#brief').append("<tr><td>" + data[2][0] + "</td></tr>")

不要忘记添加检查data数组中可能的undefined值的检查。

最新更新