[英]Ajax call to asp.net web method doesn't trigger
我是ajax和javascript的新手。
我的Web項目根目錄中的一個名為people.aspx的頁面中有以下Web方法:
[System.Web.Services.WebMethod]
public static string RenderDetails()
{
return "Is it working?";
}
我正在嘗試通過來自people.aspx頁面的Ajax調用來訪問Web方法。 我對div的click事件進行了以下ajax調用:
$("div.readonly").click(function (e) {
e.stopPropagation();
$.ajax({
type: "POST",
async:false,
url: "people.aspx/RenderDetails",
dataType: "json",
beforeSend: function () {
alert("attempting contact");
},
success: function (data) {
alert("I think it worked.");
},
failure: function (msg) { alert("Sorry!!! "); }
});
alert("Implement data-loading logic");
});
我在javascript控制台中沒有收到任何錯誤,但是,ajax調用也無法訪問Web方法。 任何幫助將不勝感激。
謝謝!
嘗試將類型更改為GET
not POST
(這可能就是為什么您的網頁沒有被點擊的原因)。 另外,您的failure
參數不正確 ,應該是error
。 展開它以包括所有參數(它將提供更多信息)。 簡而言之,將整個AJAX查詢更改為:
$.ajax({
type: "GET",
async:false,
url: "people.aspx/RenderDetails",
dataType: "json",
beforeSend: function () {
alert("attempting contact");
},
success: function (data) {
alert("I think it worked.");
},
error: function (jqXhr, textStatus, errorThrown)
alert("Sorry!!! "); // Insert breakpoint here
}
});
在瀏覽器中,調試錯誤功能。 參數(尤其是jqXHR)包含很多有關失敗原因的信息。 如果仍然有更多問題,請向我們提供jqXHR的信息(錯誤字符串,錯誤代碼等)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.