当将Async设置为false时,此代码处理正常,但是当将Aync设置为true时,只要调用Ajax,它就会抛出错误(警告msg带有“fail”)但它仍然被处理(意思是数据被发送到服务器端,数据被保存!)。
因此,将Async设置为false或true可以完成作业,但将Async设置为true将转到Error并抛出错误。
我通过按钮上的onClick事件调用此Ajax。
$.ajax({
type: "POST",
async: true,
cache: false,
url: "ScriptWS.asmx/UpdateXml",
data: "{'QuestionKey':'" + QuestionKey + "'}",
contentType: "application/json; charset=utf-8",
dataType: "html",
success: function (data) {
UpdateXml_CallBack(data);
},
error: function (msg) {
alert('fail');
});
谢谢你的帮助!
答案 0 :(得分:0)
我实际上找到了答案。
问题是我正在运行for循环来发送AJAX调用。因此,它同时发送AJAX调用,并且响应丢失,或被下一个AJAX调用中断。
我从这里使用AjaxQueue解决了这个问题 http://gnarf.net/2011/06/21/jquery-ajaxqueue/
谢谢。