您的位置:首页 > Web前端 > JavaScript

js中ajax异步导致的一些问题

2016-04-09 17:55 309 查看
问题1:ajax默认是异步,所以在ajax中对外面定义的变量赋值,不能正确赋值

$("form").submit(function () {         var flag;
$.ajax({
type: 'GET',
url: "@Url.Action("action", "controller")",             //async: false,
success: function (data) {
if (data == "S") {
swal("该种子品种+种子批次已经存在!请勿重复添加!!", data.Msg, "warning");
flag = false;
}
else {
flag = true;
}
}
});
alert(flag);
return flag;
});


如果不加async:false这句话,alert(flag)永远都是undefined

由于是异步,没等到ajax返回结果执行success函数,先alert了。

故此时必须加上 async:false 这句话才能alert出来flag的赋值。


                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: