var url = 'http://en.wikipedia.org/w/api.php?action=opensearch&format=json&limit=15&search=' + search;
var ourRequest = new XMLHttpRequest();
ourRequest.open('GET', url);
ourRequest.onload = function() {
var data = JSON.parse(ourRequest.responseText);
console.log(data);
};
ourRequest.send();

有人可以告诉我为什么我无法在控制台中获取解析数据。
答案 0 :(得分:0)
好吧,我使用以下代码。
$.ajax({
url: url,
jsonp: "callback",
dataType: "jsonp",
success: function(data) {
console.log(data);
}
});
答案 1 :(得分:0)
您需要在url变量中再添加一个参数才能使此请求生效 - 的原点= * 即可。添加它,您的代码就可以了。
检查我是如何更改url
变量的。 Wikipedia API要求请求源包含在参数字符串中。
document.getElementById('do-search').addEventListener('click', search);
function search(){
var search = document.getElementById('search').value;
var url='http://en.wikipedia.org/w/api.php?action=opensearch&format=json&limit=15&origin=*&search='+search;
var ourRequest = new XMLHttpRequest();
ourRequest.open('GET', url);
ourRequest.onload = function() {
var data = JSON.parse(ourRequest.responseText);
document.getElementById('results').innerHTML = data;
};
ourRequest.send();
}

<input id="search" type="text">
<button id="do-search">Search</button>
<div id="results"></div>
&#13;