来自APIXU的天气API的问题
问题描述:
我刚开始学习API请求,并试图使用APIXU API调用显示当前多伦多的天气(这里是文档:https://www.apixu.com/doc/current.aspx),我不确定我做错了什么。来自APIXU的天气API的问题
这里是HTML:
<div class="weather">
<h3>Toronto Weather Forecast</h3>
<ul style="margin: 0">
</ul>
</div>
这里是JS:
// Weather API
function loadData() {
var weatherAPIXU = "http://api.apixu.com/v1/current.json?key=XXXXXXXXXXXXXXXXX&q=Toronto";
$.getJSON(weatherAPIXU, function(data) {
var list = $(".place ul");
forecast = data.current;
list.append('<li>Temp: ' + forecast.temp_c + '°C</li>');
}).error(function(e) {
$(".place").append('<p style="text-align: center;">Sorry!</p><p style="text-align: center;">Could Not Be Loaded</p>');
});
};
$('.place').submit(loadData);
一旦我知道如何通过JSON实现它,我想与knockout.js其绑定以及
所以,如果你可以给我建议,那将不胜感激。
答
我仔细看了看,发现我根本没有加载API。所以,对于那些可能有类似问题的人来说,这是一个可行的解决方案
$(document).ready(function loadData() {
var weatherAPIXU = "http://api.apixu.com/v1/current.json?key=XXXXXXXXXXXX&q=Toronto";
$.getJSON(weatherAPIXU, function(data) {
var forecast = data.current.temp_c;
var weather = $(".weather");
weather.append(forecast + '° C');
}).error(function(e) {
$(".weather").append('Sorry! Not Loaded');
});
$('.weather').submit(loadData);
});
在这个链接它说如何处理ajax请求与淘汰赛:http://knockoutjs.com/documentation/json-data.html。另外Knockout贴图插件可以帮助你(http://knockoutjs.com/documentation/plugins-mapping.html)。 –
谢谢你的回复!我还没有进入这个映射,但感谢你的链接 - 我会研究它。现在我只是很好奇为什么我的JSON没有加载到HTML中。因为我可以在控制台中看到结果。 –