我想發送並返回一個簡單的字符串從JavaScript使用AJAX的VB.NET web方法。這裏是我使用的Javascript/jQuery腳本:傳遞並返回一個字符串到VB.NET Web方法
function jQuerySerial() {
//I SET A VARIABLE TO THE STRING I WANT TO PASS INTO MY WEB METHOD
var str = "Hello World";
//AND TRY TO PASS IT INTO MY VB.NET WEB METHOD
$.ajax({
type: "POST",
url: "test_WebService.asmx/testWebService",
data: str,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (e) {
alert("It worked: " + e);
},
error: function (e) {
alert("There was an error retrieving records: " + e);
}
});
}//END jQuerySerial
這裏是非常簡單的VB.net Web方法。 Web方法什麼也不做,但得到的字符串,然後傳回的Javascript:
<WebMethod()> _
Public Function testWebService(str As String) As String
Return str
End Function
當我試圖運行這個錯誤:功能火災和返回消息說:
"There was an error retrieving records: [object Object]"
我有許多許多其他Web方法都在這個相同的Web服務類中,它們操縱數據庫記錄,並且它們都可以工作。但是,這是我第一次嘗試使用$ .ajax語法編寫,並將某些內容返回給調用Javascript,因此我對這裏的錯誤完全無能爲力。
關於如何使這項工作的任何建議,將不勝感激。謝謝
爲了幫助您調試JS,嘗試'的console.log(E)'在'success'& 'error'功能而不是'alert'。因爲$ .ajax()'error'處理程序被觸發,所以假設錯誤在於JS是安全的 - 在發送之前嘗試將字符串更改爲有效的json(即:'str = {「hello」:「world」}' ) – Labu
謝謝@WillemLabu的輸入。我接受了您的意見以及Joshua Whitley提供的鏈接中的信息,並解決了問題。我非常感謝你的協助。我會盡快發佈我使用的解決方案。 –
很高興我能幫到你。 :{D – Labu