2009-10-14 198 views
0

我正在使用web服務返回由$ .ajax方法調用的字符串。我如何獲得價值?

$.ajax({ 
      type:"GET", 
      url:"ajaxService.asmx/Save", 
      data:{}, 
      success:function(msg){ 

      //getData(serviceURL, controlLocation,divname,controlID); 


      } 

我如何獲得的返回值。

回答

1

閱讀上$.ajax()實際的返回值,如請求的內容,將被存儲在您的示例中的「味精」的說法。如果你需要請求本身的狀態碼(404,500等),你需要爲你的函數添加一個額外的參數。

從有關Ajax調用成功功能的jQuery的文檔:

「 的一種功能,如果請求成功調用這個函數會得到兩個參數:從服務器返回的數據,按照格式化該 '的dataType' 參數,並描述狀態的字符串。這是一個Ajax事件。

function (data, textStatus) { 
    // data could be xmlDoc, jsonObj, html, text, etc... 
    this; // the options for this ajax request 
} 

+0

當我一個lert(數據),我得到一個對象,我如何解析這個。另外地位是成功。謝謝。 – Greens 2009-10-14 03:04:01

+0

如果你有權訪問Firefox,我會強烈推薦Firebug的控制檯輸出命令。它可以讓你看到對象中到底是什麼。 http://getfirebug.com/console.html 如果您希望輸出實際上是一個字符串,您可能需要檢查您是否請求正確類型的數據(json,html等) – emills 2009-10-14 09:23:33

1
$.ajax({ 
    type:"GET", 
    url:"ajaxService.asmx/Save", 
    data:{}, 
    success:function(msg){ 
     // if you use 2.0 framework of .net then you have to make object 
     var s = eval('(' + msg + ')'); 

     // if you use 3.5 framework of .net then you have to make object 
     var s = eval('(' + msg.d + ')'); 

     //then you can take value from s. 
    } 
})