【发布时间】:2013-10-08 18:26:08
【问题描述】:
所以我希望这个 AJAX 调用异步运行,但它只适用于 async: false
var url = 'Default.aspx/CheckLogin';
$.ajax({
async: true, // works with async: false
type: "POST",
contentType: "application/json; charset=utf-8",
url: url,
data: '{"email":"' + email.val().trim() + '", "password":"' + password.val().trim() + '"}',
dataType: "json",
success: function (data) {
alert("success!");
},
error: function (result,something,error) {
alert("Error: " + error);
}
});
编辑:
当 async 为真时,警报将立即显示“错误:”,即没有错误消息。 CheckLogin 函数非常慢,所以当它实际运行时需要一段时间。
知道我做错了什么吗?
编辑 2:
这是我从 chrome://net-internals/#events 获得的一些信息:
t=1381258516496 [st= 0] +REQUEST_ALIVE [dt=12]
t=1381258516497 [st= 1] +URL_REQUEST_START_JOB [dt=11]
--> load_flags = 142737665 (ENABLE_LOAD_TIMING | MAYBE_USER_GESTURE | REPORT_RAW_HEADERS | VALIDATE_CACHE | VERIFY_EV_CERT)
--> method = "POST"
--> priority = 2
--> upload_id = "0"
--> url = "http://localhost:1176/web_new/Default.aspx/CheckLogin"
t=1381258516497 [st= 1] HTTP_CACHE_GET_BACKEND [dt=0]
t=1381258516497 [st= 1] +HTTP_STREAM_REQUEST [dt=11]
t=1381258516508 [st=12] CANCELLED
t=1381258516508 [st=12] -HTTP_STREAM_REQUEST
t=1381258516508 [st=12] -URL_REQUEST_START_JOB
--> net_error = -3 (ERR_ABORTED)
t=1381258516508 [st=12] -REQUEST_ALIVE
【问题讨论】:
-
当您尝试使用
assync:false时会发生什么?控制台中的一些错误会有所帮助。 -
什么不适用于 async: false ?
-
是什么让你认为它不是异步的?只需删除该属性?
-
如何触发请求?
-
您应该打开您的网络检查器并查看网络活动选项卡。在那里,您将能够确切地看到请求发生了什么。
标签: asp.net ajax jquery asynchronous