Ajax.NET初步了解


1. Ajax.NET Pro的下载地址http://www.ajaxpro.info/

2. Ajax.NET简介

Ajax.NET是一个类库,实现从Javascript到服务器端.NET的存取。

Ajax.NET的特点:

l 能把Javascript中的调用传递到.NET方法,并返回到Javascript回叫。

l 能存取来自于JavaScript的会话数据。

l 缓存结果

l 自由使用,可用的源码。

l 用属性标记方法

l 完整的类支持以返回客户端JavaScript

l 使用HtmlControls来进行输入和返回值

l 可以返回数据表,数据集,数据视图,数组和集合

3. Ajax.NET的入门(以下例子在VS 2005下编写)

1) 新建网站AjaxDemo

2) 首先,先添加对AjaxPro.2.dll的引用(Framework 1.1 AjaxPro.dll)

3) 配置Web.Config文件

1<configuration>
2<system.web>
3<!-- Ajax.NETProfession 
4将ajaxpro下文件扩展名为.ashx的文件的HTTPGET
5和POST请求映射到AjaxPro.AjaxHandlerFactory
6处理程序
7.NetFramework1.1配置:
8<httpHandlers>
9<add
10verb="POST,GET"
11path="ajaxpro/*.ashx"
12type="AjaxPro.AjaxHandlerFactory,AjaxPro"
13/>
14</httpHandlers>
15-->
16<httpHandlers>
17<!--.NetFramework2.0配置-->
18<add
19verb="POST,GET"
20path="ajaxpro/*.ashx"
21type="AjaxPro.AjaxHandlerFactory,AjaxPro.2"
22/>
23</httpHandlers>
24</system.web>
25</configuration>


4) 新建页面FirstAjaxNet.aspx

VS 2005新建页面默认不带命名空间,自己定义一个命名空间,这里我们全部用AjaxDemo作为名称空间,
如果在后端代码添加以下代码设定命名空间,
namespace AjaxDemo
{
//......
}
那么关联的
Aspx页面上的
<%@ Page Language="C#" ……. Inherits="AjaxDemo.FirstAjaxNet" %>
中的Inherits属性也要进行相应的修改,否则编译将会出错。

添加一个.NET服务端方法GetAuthorName,为了让服务端方法能够和Javascript脚本编写的客户端方法能够交互,必须用Ajax.NET的属性标记把方法标记为AjaxPro.AjaxMethod属性;另外ASP.NET后端代码中的方法要在客户端脚本中进行调用,必须将方法所属类,通过Ajax.NETAjaxPro.Utility.RegisterTypeForAjax进行类型注册。

5) 客户端脚本


1<scriptlanguage="javascript"type="text/jscript">
2functionGetAuthor()
3{
4//调用ASP.NET服务端方法,并回调JavaScript客户端脚本函数,
5//必须在后端代码先注册所调用方法所属类的类型
6returnAjaxDemo.FirstAjaxNet.GetAuthorName(getAuthor_callback);
7}

8
9//JavaScript客户端脚本回调函数
10functiongetAuthor_callback(res)
11{
12//res.value获得服务端方法返回值
13document.getElementById("lblAuthor").innerText=res.value;
14window.status="hi,"+res.value+"wellcome!";
15}

16
17functionInit()
18{
19document.getElementById("divUserInfo").style.display="";
20GetAuthor();
21}

22</script>
23

6) HTML脚本

1<formid="form1"runat="server">
2<buttonid="btnAjaxTest"onclick="javascript:returnInit();">AjaxTest</button>
3<br/>
4<divid="divUserInfo"style="display:none;">
5<table>
6<tr>
7<tdstyle="width:20%;">作者姓名:</td>
8<td><asp:Labelid="lblAuthor"runat="server"></asp:Label></td>
9</tr>
10</table>
11
12</div>
13</form>
14

7) 总结

通过Ajax.NET库,我们可以在ASP.NET中简单、快速的实现Ajax。使用中我们要注意到:要让客户端脚本调用服务端方法,必须将要访问的方法进行AjaxPro.AjaxMethod属性标记,并将方法所属类的类型通过AjaxPro.Utility.RegisterTypeForAjax进行注册。

优质内容筛选与推荐>>
1、Extjs tree2
2、Spring3系列7- 自动扫描组件或Bean
3、通知的作用。
4、Windows/Linux x64汇编函数调用约定
5、2011年总结


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号