jquery ajax 在获取函数返回值问题上总不如人意,最终找到以下解决办法:
//添加async:false.即修改为同步 ;等ajax给bol赋值完毕后,才执行下面的js部分。而异步的话,还没有来得及赋值,就已经return了。
示例:
function get_xx-jy(){
var bool = '';
var url1 = "test.php?mod=draw";
url1 = url1.replace(/&/g,'&');
jq.ajax(
{
type: "GET",
datatype: "text",
url: url1,
async: false, //是否为当前的请求触发全局AJAX事件处理函数
beforeSend:function(XMLHttpRequest){
},
success: function (num) {
if (num == "0") {
bool = num;
}
else {
bool = num;
}
}
});
return bool;
}
//添加async:false.即修改为同步 ;等ajax给bol赋值完毕后,才执行下面的js部分。而异步的话,还没有来得及赋值,就已经return了。
示例:
function get_xx-jy(){
var bool = '';
var url1 = "test.php?mod=draw";
url1 = url1.replace(/&/g,'&');
jq.ajax(
{
type: "GET",
datatype: "text",
url: url1,
async: false, //是否为当前的请求触发全局AJAX事件处理函数
beforeSend:function(XMLHttpRequest){
},
success: function (num) {
if (num == "0") {
bool = num;
}
else {
bool = num;
}
}
});
return bool;
}