AjaxPro
我只说.net2.0的的组件
官方网站:http://ajaxpro.info
目前最新版本:6.10.6.1.
下载地址:http://www.codeplex.com/AjaxPro/Release/ProjectReleases.aspx?ReleaseId=713
使用方法:
1、修改web.config
在system.web节点下加入
复制内容到剪贴板
代码:
<httpHandlers>
<add verb="*" path="*.ashx" type="AjaxPro.AjaxHandlerFactory,AjaxPro.2"/>
</httpHandlers>2、在后台类前引入ajax命名空间,在javascript中可以使用这个命名空间
复制内容到剪贴板
代码:
[AjaxPro.AjaxNamespace("AjaxExamples")]//下面的javascript会用到这个AjaxExamples
public partial class _DefaultCS : System.Web.UI.Page
{
...
}3、后台中Page_Load中注册类
复制内容到剪贴板
代码:
protected void Page_Load(object sender, EventArgs e)
{
AjaxPro.Utility.RegisterTypeForAjax(typeof(_DefaultCS));//_Default是页面类名
}4、在需要用javascript调用的方法前加入[AjaxPro.AjaxMethod]
复制内容到剪贴板
代码:
[AjaxPro.AjaxMethod]
public DateTime GetServerTime()
{
return DateTime.Now;
}5、在javascript直接调用后台的方法,就像在.net中用一样
复制内容到剪贴板
代码:
<script type="text/javascript">
function displayServerTime() {
AjaxExamples.GetServerTime(function(res) {//调用服务器端的方法GetServerTime
if(res.value != null) {
alert("The web server time: " + res.value.toLocaleString());//res.value就是服务器端返回的结果
}
});
}
</script>完整的后台代码:
复制内容到剪贴板
代码:
using System;
using System.Data;
using System.Configuration;
using System.Web;
[AjaxPro.AjaxNamespace("AjaxExamples")]
public partial class _DefaultCS : System.Web.UI.Page
{
[AjaxPro.AjaxMethod]
public DateTime GetServerTime()
{
return DateTime.Now;
}
protected void Page_Load(object sender, EventArgs e)
{
AjaxPro.Utility.RegisterTypeForAjax(typeof(_DefaultCS));
}
}总结:ajaxpro用起来非常的简单,只要加入几句简单的代码就可以实现ajax应用,并且,从服务端并不是只能返回string型,它可以返回复杂的数据类型,比如,DataSet,我们可以通过ajaxpro来从服务器端取回整个DataSet,然后在javascript中像.net一样的操作这个返回的DataSet中的DataTable,随心所欲。重要的是,它的兼容性比较好,IE6与FF2.0测试完全通过(我手头只有这两种浏览器)
[
本帖最后由 99love 于 2007-3-31 22:31 编辑 ]