[英]Why JQuery AJAX call is not working?
以下是我的JQuery AJAX方法:
function meFun() {
alert('enter');
$.ajax({
type: "POST",
url: "About.aspx/GetRes",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
// Do something interesting here.
alert(msg);
}
});
alert('end');
}
以下是我的按鈕代碼:
<input type="button" onclick="meFun();" value="Click me" id="btn" />
滾動是About.aspx中的功能
Public Function GetRes() As Boolean
Return True
End Function
meFun()
方法已成功調用, GetRes()
調用GetRes()
,並且AJAX調用未返回任何響應。
知道為什么嗎? 另外,請提出一種調試此類AJAX問題的好方法。
首先,確保服務器端具有GetRes函數的WebMethod屬性(這在C#中,我不知道您如何在VB中做到這一點)並使GetRes靜態(或VB中的任何等效功能)。
[WebMethod]
public static bool GetRes()
{
return true;
}
然后,將error
處理程序添加到您的jQuery ajax
調用中:
$.ajax({
type: "POST",
url: "About.aspx/GetRes",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
// Do something interesting here.
alert(msg);
},
error: function (data) {
}
});
alert('end');
編輯:調試,在錯誤處理程序中設置一個斷點,並檢查data
參數。 所有瀏覽器(我可以擔保IE,Firefox(帶有Firebug)和Chrome)都具有良好的腳本調試器。 如果發生錯誤,則data
中將存在一個屬性,此屬性目前尚不明確,該屬性詳細說明了該錯誤。
當您的AJAX調用預期在服務器端使用JSON格式的AJAX調用時,您將在STRING格式中返回數據通過使用newtonsoft庫或asp.net的內置jsonconversion機制將TRUE轉換為JSON格式
如svajger所提到的,您必須將其聲明為webmethod,並且必須為靜態,返回類型為字符串型
在成功處理程序中,您必須通過JSON.parse方法解析json數據
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.