好文档 - 专业文书写作范文服务资料分享网站

(客户管理)ASPNETAJA入门系列:使用客户端脚本对UP编程

天下 分享 时间: 加入收藏 我要投稿 点赞

(客户管理)ASPNETAJA入门系列:使用客户端脚本

对UP编程

ASP.NETAJAX入门系列:使用客户端脚本对UpdateProgress编程

于本篇文章中,我们将通过编写JavaScript来使用客户端行为扩展UpdateProgress控件,客户端代码将使用ASP.NETAJAXLibrary中的PageRequestManager,于UpdateProgress控件中,将添加壹个Button,来允许用户取消异步更新,且且使用客户端脚本来显示或者隐藏进度信息。

主要内容

1.通过客户端脚本取消异步更新

2.通过客户端脚本显示或者隐藏进度信息 壹.通过客户端脚本取消异步更新

1.创建壹个Web页面且切换到设计视图。

2.于工具箱中双击ScriptManager、UpdatePanel、UpdateProgress控件添加到页面中。添加后页面如下:

3.于UpdatePanel控件中添加壹个Label控件且设置它的Text属性值为“PanelRendered”。

4.添加壹个Button控件且设置它的Text属性值为“refresh”。

5.于UpdateProgress控件中添加文本textProcessing…,且添加壹个HtmlButton控件且设置它的Text属性为cancle。

6.双击refresh控件添加Click事件。

7.于Buttond的Click事件处理中添加如下代码,人为的创建壹个3秒钟的延迟且显示当前服务器的时间。

protectedvoidButton1_Click(objectsender,EventArgse) {

System.Threading.Thread.Sleep(3000);

Label1.Text=DateTime.Now.ToString(); }

8.添加如下脚本,获取壹个当前PageRequestManager类的实例,且创建壹个函数调用abortPostBack方法来停止异步更新。

varprm=Sys.WebForms.PageRequestManager.getInstance(); functionCancelAsyncPostBack(){ if(prm.get_isInAsyncPostBack()){ prm.abortPostBack(); } } //-->

9.设置HtmlButton的click特性为CancelAsyncPostBack。 10.添加如下的样式块到元素之间。

width:200px;height:100px; border:1pxsolidgray; }

#UpdateProgress1{

width:200px;background-color:#FFC080; bottom:0%;left:0px;position:absolute; }

11.保存且按Ctrl+F5运行。

12.单击refresh按钮,经过短暂的延时之后显示进度信息,完成异步更新之后UpdatePanel中的信息显示为当前的服务器时间。

13.单击refresh按钮且立即单击Cancle按钮结束异步更新,注意到UpdatePanel中的时间信息且没有更新。

二.通过客户端脚本显示或者隐藏进度信息

于下列情况下,UpdateProgress控件将不会自动显示:

由UpdateProgress控件关联的UpdatePanel之外的控件引发的异步更新。

UpdateProgress控件没有关联任何UpdatePanel,不于UpdatePanel中的控件引发的异步更新(例如用代码实现的更新)。

下面的例子将展示壹个不于UpdateProgress所关联的UpdatePanel中的控件所引发的异步更新时,如何显示UpdateProgress控件。

1.于我们前面所创建的页面中,切换到设计视图。

2.选中UpdateProgress控件,于属性窗口中,设置AssociatedUpdatePanelID属性为UpdatePanel1。

3.于UpdatePanel和UpdateProgress控件之外添加壹个Button控件。 4.设置Button的Text属性值为Trigger,且设置ID属性为Panel1Trigger。 5.选择UpdatePanel控件,于属性窗口中Triggers属性行单击ellipsis(…)。

6.创建壹个异步更新触发器,且设置控件ID为Panel1Trigger。 7.双击Trigger按钮添加Click事件。

8.于Buttond的Click事件处理中添加如下代码,人为的创建壹个3秒钟的延迟且显示当前服务器的时间,且附加上壹条信息表示是由触发器引发的异步更新。 protectedvoidPanel1Trigger_Click(objectsender,EventArgse) {

System.Threading.Thread.Sleep(3000);

Label1.Text=DateTime.Now.ToString()+\}

9.于代码窗口,于已有的

  • 正文标题

  • 上下篇章

  • 相关推荐

  • 精选图文

0kh7h3l22l5uqa87qzsz8c83h0epna0167z