今天遇到一個問題,分享一下給可能遇到這個問題的朋友
假如我在一個function裡面要使用AJAX去取得回傳的值再回傳,如下:
function get_init_item_json_data()
{
var d;
jQuery.ajax({
url: ‘/pages’,
type: ‘get’,
dataType: ‘json’,
success:function(data)
{
d = data;
}
});
return d;
}
但是此時會發現d其實undefined
後來發現因為AJAX是非同步處理造成的
這時改為
function get_init_item_json_data()
{
var d;
jQuery.ajax({
url: ‘/pages’,
type: ‘get’,
dataType: ‘json’,
async:false
success:function(data)
{
d = data;
}
});
return d;
}
這樣就可以了