ASP.NET/JavaScript - Ajax调用,如何?
问题描述:
请温和一点,因为我还不熟悉网络编程和对Ajax非常陌生!ASP.NET/JavaScript - Ajax调用,如何?
我创建了一个C#函数,它从mssql数据库中提取数据,将其格式化为一个json字符串并将其返回。现在我需要通过与C#代码文件相关的aspx页面从我的javascript(jQuery)滑块进行调用。
我实际上从来没有做过这样的事情,从我可以告诉谷歌搜索我需要使用xmlHttpRequest,但我究竟如何使该函数得到这个字符串?
如果某人有一些示例代码展示了这个工作原理,那将会非常棒。
答
如果标记C#函数作为[的WebMethod]或使ASP.NET web服务的一部分它是用jQuery相对容易。这两种技术都可以很容易地将响应自动转换为ASP.NET的JSON对象,这使得客户端的处理更加容易(恕我直言)。
下面的例子是如果页面有一个名为GetData
的WebMethod
,但是如果你创建一个服务,那么改变这个URL是微不足道的。
$.ajax({ url: "somepage.aspx/GetData",
method: "POST", // post is safer, but could also be GET
data: {}, // any data (as a JSON object) you want to pass to the method
success: function() { alert('We did it!'); }
});
在服务器上:
[WebMethod]
public static object GetData() {
// query the data...
// return as an anonymous object, which ASP.NET converts to JSON
return new { result = ... };
}
如果webmethod在页面内部,它需要是静态的,但如果它在web服务中不需要使其静态。 – 2010-03-01 15:02:31
伟大的提示!非常感谢 :] – cc0 2010-03-01 15:23:14