我想从另一个页面通过$.get
获取数据,但我无法读取函数外的值。这里是我的代码:使用jQuery从其他页面获取数据
$.get('data.php?<?php echo ($params); ?>', null, function(tsv) {
var lines = [];
traffic = [];
try {
// split the data return into lines and parse them
tsv = tsv.split(/\n/g);
jQuery.each(tsv, function(i, line) {
line = line.split(/\t/);
date = Date.parse(line[0] +' UTC');
traffic.push([
date,
parseFloat(line[1].replace(',', ''), 10)
]);
});
} catch (e) { }
options.series[0].data = traffic;;
});alert(JSON.stringify(options.series[0].data, null, 4));
的问题是,options.series[0].data
显示为空,但如果我把警报功能TSV内,那么就说明它的罚款。
代码中出了什么问题?
看来你声明'traffic'作为一个全局变量:'流量= [];功能范围之外定义'你有没有任何其他变量名为'traffic'? –
http://api.jquery.com/load/ – shubniggurath
AJAX是异步的,您可能会在结果返回之前发出警报。看到这篇文章的更多细节 - http://stackoverflow.com/questions/13966223/how-can-ajax-do-asynchronous-request-and-response-a-synchronous-result –