我想在jquery函數外部使用一些變量,但我無法使它們成爲全局變量。我已經按照第一個'var'的建議,然後分配它們,但最後一個log()返回未定義。jquery全局變量失敗
var lat,lon;
$.get('ip.json',function(data) {
var loc=data['loc'];
lat=loc.split(',')[0];
lon=loc.split(',')[1];
},'json');
console.log(lat,lon);
更新這裏是完整的代碼
var lat,lon;
$.get('ip.json',function(data) {
console.log(data);
var city=data['city'];
var loc=data['loc'];
lat=loc.split(',')[0];
lon=loc.split(',')[1];
$('body').append(' '+city+' '+lat+' '+lon);
},'json');
console.log(lat,lon);
$.get('apiurl?lat='+lat+'&lon='+lon+'&callback=test',function(data) {},'json'),
'$ .get()'是異步的。 'console.log()'行在ajax回調函數之前執行。 –
使用'$ .ajax()'並使其與'async:false'同步 – Brewal
@Brewal我曾說過,我會再說一遍,'async:false'永遠不會是答案。 –