我已经设置了一个函数和一个回调来检索有关天气警报的一些数据。由于某种原因,数据返回为“未定义”。我正在通过 json 获取数据,尽管我更愿意...获取 XML 和回调 json,但是获取和返回 json 很好。
下面是我的代码,但我已将其放入 jsfiddle 以使其更易于阅读。
http://jsfiddle.net/seversides/G7Wr8/
Javascript
$(function () {
// Specify the location and Api key
var apiKey = 'myapikey';
var location = 'zmw:00000.1.16172';
// Run the query (pull data from feed)
var url = 'http://api.wunderground.com/api/' + apiKey + '/alerts/q/' + location + '.json';
window['wCallback_3'] = function(data) {
// Get any weather alerts
var info = data.alerts;
// Warning level and color
$('#wWarning .wLevel').append('<TD>' + info.wtype_meteoalarm + '</TD>');
$('#wWarning .wColor').append('<TD>' + info.level_meteoalarm_name + '</TD>');
};
// Callback
$.ajax({
url: url,
dataType: 'jsonp',
contentType: "application/json",
cache: true,
jsonpCallback: 'wCallback_3'
});
});
HTML
<div id="wWarning">
<table class="wBox">
<h1 class="wLevel"></h1>
<h1 class="wColor"></h1>
</table>
</div>
当我运行代码时,它将数据显示为 UNDEFINED。为什么不重新调整正确的数据?