无法使维基百科的API工作

时间:2017-09-16 12:39:33

标签: javascript jquery wikipedia-api

我想使用维基百科的API将搜索结果附加到我的页面,但是当我按下回车键时,没有任何内容显示出来。到目前为止,这是我的代码:

var apiURL = "https://en.wikipedia.org/w/api.php?callback=?";
$("input").on("keydown",function search(e) {
 if(e.keyCode == 13) {

    $("#display-result").empty();
    $.getJSON(apiURL, {
    action: 'query',
    format: 'json',
    inprop: "url",
    formatversion: 2,
    generator: 'search',
    gsrsearch: $("input").val(),
    gsrwhat: "text",
    prop: 'extracts|info',
    exsentences: 3,
    exintro: "",
    explaintext: "",        
    exlimit: 20,
  })

  .success(function(response) {
    response.query.pages.forEach(function(resp) {
      $('#display-result').append(
        "<a href='" + resp.fullurl + "' target= '_blank'><div id='result' class='results'><h3>" + resp.title + "</h3><p = class='extract'>" + resp.extract + "</p></div>");
    });
  });
 };
});

这是一个jsfiddle:https://jsfiddle.net/9j6v1Leo/

1 个答案:

答案 0 :(得分:1)

我在看你的jsfiddle时发现了两件事:

  • 您正在使用jquery函数,但不包括jquery库。
  • 将您的代码放入$(document).ready(function() { }中。这样,您就可以确保DOM准备好使用JavaScript代码。

这是一个有效的jsfiddle:https://jsfiddle.net/v27a0964/