所以我正在尝试访问Wikipedia API以获得免费的Code Camp项目。我尝试使用标准的Ajax接口,它没有用 - 我尝试使用.getJSON,我仍然无法让它工作。问题不在于我的按钮,链接或功能 - 按钮登录到控制台,链接,在浏览器中输入时,返回JSON数据,该功能当前是未记录的控制台日志。有时,屏幕完全空白。
此外,CodePen和我的浏览器的控制台都没有记录“工作”消息,但Stack Overflow就是这样做的。它让我发疯,因为这是超级基础。
我做错了什么? 下面是JS,CSS和HTML,this是CodePen的链接。
//ready
$(document).ready(function() {
//jquery onclick
$("#search").on("click", function() {
var term = $("#term").val();
console.log(term);
//request
$.getJSON("https://en.wikipedia.org/w/api.php?action=opensearch&datatype=json&search=" + term + "&callback=?",
function(json) {
console.log("worked");
}); //end getJSON
}); //end onclick
}); //end docready
@import url('https://fonts.googleapis.com/css?family=Arimo');
#well{
background-color:#ededed;
}
body{
background-color:#6b6b6b;
text-align:center;
}
h1{
font-family: Times, Georgia, serif;
}
h5, form{
font-family: 'Arimo', sans-serif;
}
.result{
background-color: WHITE;
}
<script src="https://code.jquery.com/jquery-2.2.4.min.js"></script>
<div id="well">
<header>
<h1>Wikipedia Viewer</h1>
</header>
<body>
<br>
<div id="select">
<h5><a href="https://en.wikipedia.org/wiki/Special:Random" title="Random Wikipedia Article" target="_blank">Click for a random article</a></h5>
<br>
<form>
<input type="text" id="term" name="search" placeholder="What article?">
<button id="search">Search</button>
</form>
<br>
<h5>Or search above for a specific one</h5>
</div>
<ul id="results">
</ul>
</body>
</div>
答案 0 :(得分:-1)
更新:很抱歉,在我发表此答案后,我发现这是一个浏览器缓存问题。问题不够明确。
只是因为Firefox很奇怪而且Chrome已经缓存了我的 页。
解析你在回调中调用的维基百科响应数组string input_file_name1 = "shen_test_38_30_60__78_26_38_b_100_ch1-533.0-mhz-8000.0-ksps-2016-06-20-17.24.19-utc.dat";
string input_file_name2 = "shen_test_38_30_60__78_26_38_b_100_ch2-533.0-mhz-8000.0-ksps-2016-06-20-17.24.19-utc.dat";
std::ifstream input1(input_file_name1.c_str() , std::ios::binary | std::ios::in);
std::ifstream input2(input_file_name2.c_str() , std::ios::binary | std::ios::in);
split(input_file_name1, '-', v);
for(unsigned i=1; i < v.size(); i++)
{
if(v[i] == "mhz"){
f_0 = atoi(v[i-1].c_str())*1e6;
}
if(v[i] == "ksps"){
f_s = atoi(v[i-1].c_str()) * 1e3;// f_s = 8e6;
}
}
double nblocks; //f_s = 8e6;
nblocks = floor(10 / (262144 / f_s));
。
json
是搜索字词。json[0]
数组是标题。json[1]
数组是描述。json[2]
数组是链接。我误解了为什么downvote!
这是完整的工作示例。
json[3]
$(document).ready(function() {
$("#search").on("click", function() {
var term = $("#term").val();
//request
$.getJSON("https://en.wikipedia.org/w/api.php?action=opensearch&datatype=json&search=" + encodeURIComponent(term) + "&callback=?",
function(json) {
$("#results").html("");
$("#results").append("<span>" + json[1].length + " Search results for \"" + term + "\"</span>");
for (var i = 0; i < json[1].length; i++) {
$("#results").append("<li><h3><a href='" + json[3][i] + "'>" + json[1][i] + "</a></h3><p>" + json[2][i] + "</p></li>");
}
}); //end getJSON
}); //end onclick
}); //end docready
@import url('https://fonts.googleapis.com/css?family=Arimo');
#well {
background-color: #ededed;
}
body {
background-color: #6b6b6b;
text-align: center;
}
h1 {
font-family: Times, Georgia, serif;
}
h5,
form {
font-family: 'Arimo', sans-serif;
}
.result {
background-color: WHITE;
}
li {
list-style: none;
text-align: left;
}