我正在开发一个项目,使用 $.ajax 并将 dataType 设置为 jsonp 从不同域调用 Web 服务。
$.ajax({
type: "GET",
url: testService.asmx,
async: true,
contentType: "application/json; charset=utf-8",
dataType: "jsonp",
beforeSend: function (XMLHttpRequest) {
alert('Before Send'); //Nothing happnes
},
success: function (response) {
alert('Success'); //this was fired
},
complete: function (XMLHttpRequest, textStatus) {
alert('After Send'); //this was fired
}
});
问题是我有一个...正在加载动画,我想在处理 Web 服务请求时显示该动画。我尝试使用“beforeSend:”来显示加载动画,但似乎“beforeSend”没有被解雇。
当应用程序位于同一域(使用 jsonp)时,动画工作正常,但是当我将应用程序移动到不同的服务器时,除了“beforeSend”没有被调用之外,一切正常。所以用户将无法看到加载动画。
有什么解决方法吗?
跨域JSONP请求不使用XMLHTTPRequest,因此事件流程不同。
您可以在调用 $.ajax 后立即显示加载动画。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)