$.ajax / $.post 这两种方式经常用,但是一直没详细了解过,此次使用中发现$.post在未执行完成系统就继续向下执行了,不能达到自己想要的效果,即异步执行完成取到返回结果,判断后续执行。
搜索后详细看了一下两种方式的解释,确实是自己平时使用过程中不求甚解,只知道套用了,记录一下全当提醒自己吧,以后注意不能再这么着了
$.post若需要执行完成后继续向下执行则需:
$.ajaxSetup({ async: false}); //异步设置为false
$.post("../Controls/Hd_Opxml.ashx", { "strurl": strurl }, function (data) { ...});
$.ajax则需:
$.ajax({
url: "../Controls/*.ashx",
async: false,//同样设为false
type: "POST",
data: { "strurl": strurl },
dataType: "json",
success: function (data) {
...
},
error: function () {
....
}
});