2013-08-22 82 views
0

我開始將事情切換到[WebMethod] s,但開始有麻煩,並決定我需要做一些正確使用它們的更多研究。在做一個簡單的ajax調用時遇到了一些麻煩

我把$(document).ready()

   $.ajax({ 
       type: "POST", 
       data: "{}", 
       url: "http://localhost:3859/Default.aspx/ajxTest", 
       dataType: "json", 
       success: function (msg, status) { 
        alert(msg.name + " " + msg.value); 
       }, 
       error: function (xhr, status, error) { 
        var somethingDarkside; //only to put a breakpoint in. 
        alert(xhr.statusText); 

       } 
      }); 

[WebMethod]

我從來沒有得到 「請工作」 以下。我得到「undefined undefined」我可以在VS中進行調試,並且調用進入[WebMethod],返回字符串對於JSON看起來是正確的,但我還沒有能夠成功調用它。我有解析錯誤,傳輸錯誤。一切都不一致,但沒有任何事情是正確的。今天我已經有47個不同的博客,SO帖子和谷歌組合選項卡,但我無法完全破解它。

xhr.statusText狀態即可。我得到status解析錯誤。我迷路了。

在此先感謝。

編輯:jQuery的1.9.1

EDIT2:DummyString對象

 public class DummyString 
    { 
     public string name { get; set; } 
     public string value { get; set; } 

     public DummyString(string n, string v) 
     { 
      name = n; 
      value = v; 
     } 
    } 

EDIT 3:我也有<asp:ScriptManager EnablePageMethods="true" ...

+0

究竟_are_你的結果字符串的內容? – Nuffin

+0

你有沒有在瀏覽器中調試過它? –

+0

瀏覽器調試是我如何得到'status'解析錯誤。 'DummyString'就像一本字典。它返回一個'name:please,value:work'的東西。 – Bmo

回答

1

簡化爲:

$.ajax({ 
    type: "POST", 
    url: "Default.aspx/ajxTest", 
    contentType: "application/json; charset=utf-8", 
    dataType: "json", 
    success: function (data) { 
     alert('success'); 
    }, 
    error: function (data) { 
     alert('fail'); 
    } 
}); 

[WebMethod] 
public static string ajxTest() 
{ 
    return @"{ ""hello"":""hola"" }"; 
} 

並測試。 (以上將工作)的.D參數

+0

我從此失敗。這也是我開始的地方,嘗試最簡單的方法。我有一個糟糕的一天,這並不難。 – Bmo

+0

嘗試GET。 (因爲你不是真的發佈) –

+0

也是一個失敗。我將最終發佈。我試圖在那裏建立我的路。這是一個雙參數調用,當它是它自己的.aspx頁面時工作得很好。 – Bmo

1

的服務回報響應嘗試以下

msg.d.name 
+0

我正在研究@Sam Leach的方法。我已經從中得到了返回的數據。此時我無法完成呼叫。我閱讀並嘗試之前沒有運氣順便說一句。 – Bmo

相關問題