我有一个用于进行一些处理和Ajax调用的按钮,所以我在Jquery .click()
中做了它并且它工作正常但是当我尝试创建加载微调器时,加载微调器没有出现在ajax和.click()代码的结尾。
所以我想在.click()
开始时启动微调器并隐藏ajax成功,该怎么做?
像:
$("#ConfirmBTN").click(function () {
$("#confirmBody").LoadingOverlay("show");
... some code
$.ajax({
type: 'POST',
dataType: 'text',
url: url,
data: "jsonData=" + jsonData,
success: function (returnPayload) {
..
$("#confirmBody").LoadingOverlay("hide");
},
error: function (xhr, ajaxOptions, thrownError) {
$("#confirmBody").LoadingOverlay("hide");
},
processData: false,
async: false
});
}
答案 0 :(得分:1)
摆脱async: false
。然后你的点击功能将返回浏览器的主事件循环,它将更新显示。
将任何依赖于AJAX响应的代码移动到success:
函数中。