ASP.NET AJAX深入浅出系列课程(2):UpdatePanel的使用(上) 笔记 备忘

1、使用Framework所支持的方法注册脚本,

(1)RegisterArrayDeclaration                        向页面输出数组的定义
(2)RegisterClientScriptBlock                        输出脚本(紧跟这from)
(3)RegisterClientScriptInclude                     添加脚本的引用
(4)RegisterClientScriptResource                  从程序集中获取资源
(5)RegisterExpandoAttribute                        为控件添加额外的属性
(6)RegisterHiddenField                                 添加隐藏控件
(7)RegisterOnSubmitStatement                     可以添加一段语句,返回一个值,如为True则下次提交才会成功
(8)RegisterStartupScript                                 向页面输出脚本(紧跟着/from)

现在可以使用scriptmanage下面的方法替代


2、UpdatePanel  属性1:RenderMode 分为两个值:Block为用DIV包含内容,Inline为用span包含内容


3、UpdateMode属性:也分为两个值:Always所有的动作都刷新内容,Conditional仅内部活触发的控件刷新

4、ChildrenAsTriggers:是否发送异步请求,如设定false则不能再把UpdateMode设为Always会导致异常

5、Triggers设置触发updatepanel的控件

6、  ScriptManager.GetCurrent(this).RegisterAsyncPostBackControl(this.Button1);
  ScriptManager.GetCurrent(this).RegisterPostBackControl(this.Button2);
代码中设置触发
protected void Button1_Click(object sender, EventArgs e)
 {
  this.UpdatePanel1.Update();
 }

7、UpdateProgress中可以设置AssociatedUpdatePanelID制定触发的updatepan,DisplayAfter设置延迟时间,DynamicLayout指定隐藏时是否占位

错误处理:服务端
8、ScriptManager中的AllowCustomErrorsRedirect属性:遇到错误是否根据web.Config中的设置跳转

9、AsyncPostBackError事件:异步刷新中出现错误时触发的事件。

1 protected void ScriptManager1_AsyncPostBackError(object sender, AsyncPostBackErrorEventArgs e)
2     {
3         ScriptManager.GetCurrent(this).AsyncPostBackErrorMessage = e.Exception.Message;
4     }


10、AsyncPostBackErrorMessage属性:客户端接收到的错误信息

客户端:
响应PageRequestManager的endRequest事件

将errorHandled属性设为true。

1 Sys.WebForms.PageRequestManager.getInstance().add_endRequest(function(sender, e)
2             {
3                 e.set_errorHandled(true);
4                 $get("error").innerHTML = "Sorry, an error has occurred: " + e.get_error().message;
5                 setTimeout(function(){ $get("error").innerHTML = ""; }, 3000);
6             });


posted on 2007-08-07 22:13  马可香蕉  阅读(397)  评论(0编辑  收藏  举报