本文介绍了使用Wikipedia的API从搜索查询中获取结果的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试使用维基百科的API进行搜索查询,然后将这些结果附加到我的页面。这是我到目前为止:
I am trying to use Wikipedia's API to make a search query, then append those results to my page. This is what I have so far :
"use strict";
$(document).ready(function(){
function searchWikipedia(searchCriteria){
$.getJSON('https://en.wikipedia.org/w/api.php?action=query&format=json&limit=15&callback=?&titles=' + searchCriteria, processResult);
}
$('#btn').click(function searchCriteria() {
var searchCriteria = $("input[name=Wikipedia]").val();
searchWikipedia(searchCriteria);
})
function processResult(apiResult){
if (apiResult.query.pages[-1]){
console.log("No results");
} else {
for (var i = 0; i < apiResult.length; i++){
$('#display-result').append('<p>'+apiResult+'</p>');
}
}
}
});
到目前为止,我的html没有附加任何内容,我的控制台也没有错误。
So far nothing appends to my html and there's no errors in my console.
推荐答案
@Ali Mamedov的答案是要走的路(来自维基百科)
但维基百科的链接却遗漏了 HTTP:。此外,您可以处理您的函数响应:
@Ali Mamedov's answer is the way to go (it's from Wikipedia)But the wikipedia link is missing the http:. Also, you can handle the response on your function:
$(document).ready(function(){
$('#btn').click(function() {
$.ajax({
url: 'http://en.wikipedia.org/w/api.php',
data: { action: 'query', list: 'search', srsearch: $("input[name=Wikipedia]").val(), format: 'json' },
dataType: 'jsonp',
success: processResult
});
});
});
function processResult(apiResult){
for (var i = 0; i < apiResult.query.search.length; i++){
$('#display-result').append('<p>'+apiResult.query.search[i].title+'</p>');
}
}
这篇关于使用Wikipedia的API从搜索查询中获取结果的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!