我有以下的jQuery AJAX請求:jQuery的AJAX調用一個ASP.NET的WebMethod
function sendUpdate(urlToSend) {
var code = AccessCode;
var url = urlToSend;
var options = { error: function(msg) { alert(msg.d); },
type: "POST", url: "webmethods.aspx/UpdatePage",
data: "{ accessCode: " + code + ", newURL: '" + url + "' }",
contentType: "application/json; charset=utf-8",
dataType: "json",
async: true,
success: function(response) { var results = response.d; } };
$.ajax(options);
}
和相應的ASP.NET的WebMethod:
[WebMethod]
public static bool UpdatePage(string accessCode, string newURL)
{
bool result = true;
try
{
HttpContext.Current.Cache[accessCode + "l"] = newURL;
}
catch
{
result = false;
}
return result;
}
這一切都用來與「正常工作async:false「,但是我必須擺脫它,因爲它會凍結瀏覽器直到收到響應。現在上面的AJAX請求返回「undefined」。
有人能告訴我爲什麼會發生,問題在哪裏?
謝謝。
什麼是未定義,「響應」或「response.d」?您應該看到完整的響應對象是看看它是否給出了來自服務器的任何錯誤消息。 – rossisdead