我想使用jQuery.ajax()調用webservice,但webervice不會被調用。 - 如果我更改網址:引用.ashx文件,它會被調用,但不是.asmx?webservice不會被jQuery調用
下面是我使用的代碼:
jQuery.ajax({
type: "POST",
url: "/services/CheckUsername.asmx/CheckUsername", // this doesn't get called
//url: "/services/CheckUsername.ashx/ProcessRequest", this gets called
data: '{ "context": "' + "username" + '"}',
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (msg) {
alert("Result: " + msg);
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert("Error: " + textStatus)
}
的ashx的文件被調用但parsererror被重新調校,因爲它返回HTTP上下文 - 我怎麼能修改此從Web服務得到一個字符串返回類型?
感謝,
感謝您的回覆,Elangovan。我不知道該把[ScriptMethod]放在哪裏 - 你的意思是把它添加到方法之上的webservice c#代碼中?即[WebMethod]在方法名稱之上。 – Theomax 2010-05-25 10:46:55
我用下面的線程作爲參考:http://stackoverflow.com/questions/1791088/asp-net-scriptmethod-generating-empty-json並添加了[ScriptMethod(ResponseFormat = ResponseFormat.Json)]但VS沒有認識到它是正確的語法? – Theomax 2010-05-25 10:49:46
它應該像[ScriptMethod] 語法正確一樣添加,但在您的asmx文件中引用名稱空間System.Web.Script.Services。 – Elangovan 2010-05-25 10:56:20