揭开AJAX神秘的面纱(AJAX个人学习笔记)第1/5页

2019-09-14 07:17:48于海丽


<asp:ScriptManager ID="asm1" runat=” server” >
<AuthenticationService Path="" />
<ProfileService LoadProperties="" Path="" />
<Scripts>
<asp:ScriptReference />
</Scripts>
<Services>
<asp:ServiceReference Path="" />
</Services>
</asp:ScriptManager>

下面重点介绍一下容易出错的一些属性和方法:
1、ScriptMode属性:指定发送模式。一个枚举属性,四个值:Auto、Debug、Release、Inherit。
Auto:默认值。即根据Web.config中retail配置节的值来决定发送脚本的模式。如果retail节点值为true,即将发布模式的脚本发送至客户端,否则发送调试版本。
Debug:当retail属性值为false时,ScriptManager控件将Debug版本的脚本发送至客户端。
Release:当retail属性值为false时,ScriptManager控件将Release版本的脚本发送至客户端。
Inherit:与Auto用法相同,但一般不用。
2、Services属性:用以指定当前页面所引用的WEB服务,使用<asp:ServiceReference>节点可以注册WEB服务,ScritpManage控件将为每一个注册的Web服务生成客户端代理。

(2)ScriptManagerProxy是ScriptManager的扩展,是专门为使用了母版页或用户控件的工程中使用的脚本管理器。当工程页面中已使用了ScriptManager,那么在母版页或用户控件中就可以使用一个ScriptManagerProxy来代理ScripManager的工作。属性上基本与ScriptManager控件一样。

(3)UpdatePanel是使用最广泛的Ajax控件,在页面中嵌入UpdatePanel,就可以实现页面的局部刷新。页面中可以有多个UpdatePanel,UpdataPanel之间也可以相互嵌套。(应用重点)
Updatapanel就是实现页面局部刷新的控件,UpdatePanel控件的前台代码如下所示:

<asp:UpdatePanel runat="server" ID="udp1">
<ContentTemplate> //模板
内容模板 放置内容的区域
</ContentTemplate>
<Triggers> //设置提交服务器的方式:异步或同步
<asp:AsyncPostBackTrigger ControlID="" EventName="" /> //指设置异步模式及controlID(引发更新的控件ID)和EventName(引发更新事件名称)
<asp:PostBackTrigger ControlID="" /> //指同步模式,一般不设置这个,可以不写这行代码,因为ajax实现的就是异步更新,同步就失去了意义!
</Triggers>
</asp:UpdatePanel>

重要属性和事件:
ChildrenAsTriggers:当UpdateMode属性值为Conditional时,设定UpdatePanel中的子控件的异步请求服务器是否会引起UpdatePanel的更新。
RenderMode:表示UpdatePanel解释至前台HTML代码样式,默认值为Block即解释为<div></div>,当该属性设置为Inline时,UpdatePanel被解释为<span></span>
Triggers:设定触发当前UpdatePanel更新的控件和事件。(这个是重点)