2010-06-01 62 views
0

我有以下的jQuery的AJAX調用設置:幫助使用jQuery的Ajax調用ASMX返回字符串

function Testing() { 
    var result = ''; 

    $.ajax({ 
      url: 'BookingUtils.asmx/GetNonBookableSlots', 
      dataType: 'text', 
      error: function(error) { 
        alert('GetNonBookableSlots Error'); 
      }, 
      success: function(data) { 
       alert('GetNonBookableSlots'); 
       result = data; 
      } 
      }); 

     return result; 
} 

這裏是我試圖調用Web服務:

[WebMethod] 
    public string GetNonBookableSlots() 
    { 
     return "fhsdfuhsiufhsd";    
    } 

當我運行jQuery代碼沒有錯誤或成功事件觸發(沒有任何警報被調用)。事實上,沒有任何事情發生,JavaScript代碼只是在最後返回語句。

我在Web服務代碼中放置了一個斷點,它確實受到了打擊,但是當我離開該方法時,無論如何我都會返回return語句。

有人可以給我一些關於如何正確配置ajax調用的提示,因爲我覺得我做錯了。 webservice只需要返回一個字符串,不涉及XML或JSON。

乾杯。 Jas。

回答

1

只是用於調試試試這個:

 
$.post('BookingUtils.asmx/GetNonBookableSlots', function(data) { 
    console.log(data); 
}, 'text); 

使用螢火蟲或HTML督察控制檯查看輸出。另外,Firebug或HTML Inspector可以爲您提供其他線索,解決問題。您可以檢查返回的結果以查看是否存在HTTP錯誤。

+0

+ 1我剛剛在FireFox中運行該頁面(以測試您使用Firebug的想法),並且Ajax調用正常工作。所以我認爲這可能是一個IE問題 - 只是在IE中再次嘗試頁面(沒有VS調試)和Ajax調用。嗯,也許是一個紅鯡魚,因爲它可能是VS導致的問題。我會密切關注這一點,但感謝上述提示。 – 2010-06-01 09:56:03