Jquery的Asp.Net 2.0的Ajax属性
我总是在博客中看到这样的代码:
$.ajax({ type: "POST", contentType: "application/json; charset=utf-8", url: "WebService.asmx/HelloWorld", data: "{}", dataType: "json", success: function(msg) { alert(msg.d); } });
但我认为这只能用asp.net 3.5运行。 我无法用2.0运行它。 如何在我的应用程序中使用这些代码?
您需要将此属性添加到Web服务器类
[System.Web.Script.Services.ScriptService] public class Service : System.Web.Services.WebService
和这个属性到你的function
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
从技术上讲,您不需要指定responseformat,因为它会根据您在请求中指定的格式进行响应。 您必须在请求中指定格式。
问候
ķ
如果使用jQuery连接到服务器,则不需要HTML中的ScriptManager
。
我认为你代码的其他部分是正确的。 只需删除ScriptManager
。
我已经知道这篇文章,但它无法帮助我。
在我的示例应用中,我使用以下代码:
我的Jquery代码:
$(document).ready(function() { $('#clKaydet').click(function() { $.ajax({ type: "POST", contentType: "application/json; charset=utf-8", url: "WebService.asmx/HelloWorld", data: "{}", dataType: "json", success: function(msg) { alert(msg); } }); }); });
我的Html代码:
我的Webservise代码:
_ Public Function HelloWorld() As String Dim sText As String = "Hello" Return sText End Function
有什么错吗?
我们使用jQuery进行所有DOM操作,但是当将数据发送回服务器时,我们使用ASP.Net AJAX来利用自动生成的代理类
让生活变得简单!
我认为你缺少的是用WebMethod标签标记的方法将数据序列化为XML,而不是JSON。 使用ASP.NET MVC,您可以本机返回JSON,但是如果您想为WebMethod使用JSON,则可能需要编写自己的转换器。 我建议尝试将AJAX调用的数据类型更改为“xml”,看看是否有效。
我也没有使用jquery for AJAX,所以我还没有尝试过(还)。
总而言之,您是否这样说,我不能直接使用这些代码与asp.net 2.0?