linux社区爱心援助Linux认证系列教程业界动态站务新闻公司招聘网络学院网址大全LPI专题CISCO专题
设为首页
加入收藏
管理团队
JSP  
JAVA  
PERL  
 您的位置:首页 > 开发语言 > asp.net >
栏目导栏
  php
  JSP
  ASP
  asp.net
  JAVA
  c/c++/c#
  perl
  JavaScript
  Basic
  Delphi
资料搜索
热门文章
·NetBPM工作流的一个示例:请假
·Office Web Components(OWC)绘
·asp.net正则表达式语法
·asp.net 2.0 ajax中使用PopupC
·Ado.Net读取Excel常见问题总结
·数据源为空时如何让GridView显
·如何让UpdatePanel支持文件上传
·C#.Net的常见面试试题和参考答
·asp.net ajax客户端编程+jquer
·Brettle.Web.NeatUpload.dll支
·ASP.NET使用Cookie
·ASP.NET DEMO 15: 同时支持行单
·如何使IE的后退按钮无效
·如何在ASP.NET中用OWC绘制图表
·asp.net:正确判断当前用户角色
最新文章
·Ajax Control Toolkit Animati
·讨论一下类似BlogEngine内一次
·使用CSS+SiteMap+UserControl+
·Asp.net中多彩下拉框的实现
·浅谈ASP.NET的Postback
·分清ASP.NET AJAX中的Extender
·Tip:在使用AjaxControlTookit
·有关注册DataItem的一些可能被
·IIRF(Ionic's Isapi Rewrite
·asp.net 客户端回调功能的实现
·关于控件部分的看法--读Progra
·为什么在vista上做开发
·如何封装JS和CSS文件为服务器端
·岂今我看过的最强的排序算法
·设计模式学习笔记之单件模式
Google
 
用Ajax 1.0制作一个按钮提交后UpdatePanel动画
[ 作者:  加入时间:2007-10-26 13:24:53  来自:Linux联盟收集整理 ]
如何制作使用Ajax 1.0一个按钮提交后台的UpdatePanel动画呢? fVZLinux联盟
   fVZLinux联盟
  这里我制使用了Ajax 1.0制作了当一个LinkButton点击提交后UpdatePanel闪出一个边框的动画. fVZLinux联盟
   fVZLinux联盟
   fVZLinux联盟
  步骤如下: fVZLinux联盟
   fVZLinux联盟
  1)拖放一个LinkButton控件和一个TextBox控件到页面 fVZLinux联盟
   fVZLinux联盟
  <asp:LinkButton ID="ExtraShow1" Text="1234567" runat="server" OnClick="ExtraShow_Click" /> fVZLinux联盟
   fVZLinux联盟
  <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox> fVZLinux联盟
   fVZLinux联盟
   fVZLinux联盟
   fVZLinux联盟
  2)添加一个LinkButton的Click事件,该事件用来将LinkButton中的Text值付给TextBox fVZLinux联盟
   fVZLinux联盟
  protected void ExtraShow_Click(object sender, EventArgs e) fVZLinux联盟
   fVZLinux联盟
  { fVZLinux联盟
   fVZLinux联盟
   TextBox2.Text = ((LinkButton)sender).Text; fVZLinux联盟
   fVZLinux联盟
  } fVZLinux联盟
   fVZLinux联盟
   fVZLinux联盟
   fVZLinux联盟
  3)拖放一个UpdatePanel控件,将LinkButton和TextBox控件放入其中.并设置UpdateMode为Conditional. fVZLinux联盟
   fVZLinux联盟
  增加LinkButton的Trigger触发一个AsyncPostBackTrigger fVZLinux联盟
   fVZLinux联盟
  <asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional"> fVZLinux联盟
   fVZLinux联盟
   <Triggers> fVZLinux联盟
   fVZLinux联盟
   <asp:AsyncPostBackTrigger ControlID="ExtraShow1" /> fVZLinux联盟
   fVZLinux联盟
   </Triggers> fVZLinux联盟
   fVZLinux联盟
   <ContentTemplate> fVZLinux联盟
   fVZLinux联盟
   <fieldset> fVZLinux联盟
   fVZLinux联盟
   <asp:LinkButton ID="ExtraShow1" Text="1234567" runat="server" OnClick="ExtraShow_Click" /> fVZLinux联盟
   fVZLinux联盟
   <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox> fVZLinux联盟
   fVZLinux联盟
   </fieldset> fVZLinux联盟
   fVZLinux联盟
   </ContentTemplate> fVZLinux联盟
   fVZLinux联盟
   </asp:UpdatePanel> fVZLinux联盟
   fVZLinux联盟
  4)写JavaScript动画方法 fVZLinux联盟
   fVZLinux联盟
   <script type="text/javascript"> fVZLinux联盟
   fVZLinux联盟
   Type.registerNamespace("ScriptLibrary");//注册一个ScriptLibrary的命名空间 fVZLinux联盟
   fVZLinux联盟
   fVZLinux联盟
   fVZLinux联盟
   //制作一个BorderAnimation边框动画(如果写过wpf的动画,那么在这里我们会发现这句话很眼熟). fVZLinux联盟
   fVZLinux联盟
   ScriptLibrary.BorderAnimation = fVZLinux联盟
   fVZLinux联盟
   function(color, duration) { fVZLinux联盟
   fVZLinux联盟
   this._color = color; fVZLinux联盟
   fVZLinux联盟
   this._duration = duration; fVZLinux联盟
   fVZLinux联盟
   } fVZLinux联盟
   fVZLinux联盟
   fVZLinux联盟
   fVZLinux联盟
   //制作一个边框 fVZLinux联盟
   fVZLinux联盟
   ScriptLibrary.BorderAnimation.prototype = { fVZLinux联盟
   fVZLinux联盟
   animatePanel: function(panelElement) { fVZLinux联盟
   fVZLinux联盟
   var s = panelElement.style; fVZLinux联盟
   fVZLinux联盟
   s.borderWidth = '1px'; fVZLinux联盟
   fVZLinux联盟
   s.borderColor = this._color; fVZLinux联盟
   fVZLinux联盟
   s.borderStyle = 'solid'; fVZLinux联盟
   fVZLinux联盟
   window.setTimeout( fVZLinux联盟
   fVZLinux联盟
   function() {{ s.borderWidth = 0; }}, fVZLinux联盟
   fVZLinux联盟
   this._duration fVZLinux联盟
   fVZLinux联盟
   ); fVZLinux联盟
   fVZLinux联盟
   } fVZLinux联盟
   fVZLinux联盟
   } fVZLinux联盟
   fVZLinux联盟
   fVZLinux联盟
   fVZLinux联盟
   //在动画中注册刚才我们制作的 fVZLinux联盟
   fVZLinux联盟
   ScriptLibrary.BorderAnimation.registerClass('ScriptLibrary.BorderAnimation', null); fVZLinux联盟
   fVZLinux联盟
   fVZLinux联盟
   fVZLinux联盟
   //定义一个panelUpdatedAnimation用来存储我们做好的边框动画,我们设置成蓝色 fVZLinux联盟
   fVZLinux联盟
   var panelUpdatedAnimation = new ScriptLibrary.BorderAnimation('blue', 1000); fVZLinux联盟
   fVZLinux联盟
   var postbackElement; fVZLinux联盟
   fVZLinux联盟
   fVZLinux联盟
   fVZLinux联盟
   Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(beginRequest); fVZLinux联盟
   fVZLinux联盟
   Sys.WebForms.PageRequestManager.getInstance().add_pageLoaded(pageLoaded); fVZLinux联盟
   fVZLinux联盟
   fVZLinux联盟
   fVZLinux联盟
   //我们在BeginRequest事件中获取到页面所有的PostBack元素 fVZLinux联盟
   fVZLinux联盟
   function beginRequest(sender, args) { fVZLinux联盟
   fVZLinux联盟
   postbackElement = args.get_postBackElement(); fVZLinux联盟
   fVZLinux联盟
   } fVZLinux联盟
   fVZLinux联盟
   fVZLinux联盟
   fVZLinux联盟
   function pageLoaded(sender, args) { fVZLinux联盟
   fVZLinux联盟
   //在窗体加载事件中我们获取到UpdatePanels fVZLinux联盟
   fVZLinux联盟
   var updatedPanels = args.get_panelsUpdated(); fVZLinux联盟
   fVZLinux联盟
   //判断如果没有任何元素返回 fVZLinux联盟
   fVZLinux联盟
   if (typeof(postbackElement) === "undefined") { fVZLinux联盟
   fVZLinux联盟
   return; fVZLinux联盟
   fVZLinux联盟
   } //否则查找里面的id中包含extrashow字符的控件,将动画注册到这些控件上 fVZLinux联盟
   fVZLinux联盟
   else if (postbackElement.id.toLowerCase().indexOf('ExtraShow1') > -1) fVZLinux联盟
   fVZLinux联盟
   { fVZLinux联盟
   fVZLinux联盟
   for (i=0; i < updatedPanels.length; i++) { fVZLinux联盟
   fVZLinux联盟
   //设置当触发PostBack后在UpdatePanel上调用动画. fVZLinux联盟
   fVZLinux联盟
   panelUpdatedAnimation.animatePanel(updatedPanels[i]); fVZLinux联盟
   fVZLinux联盟
   } fVZLinux联盟
   fVZLinux联盟
   } fVZLinux联盟
   fVZLinux联盟
   fVZLinux联盟
   fVZLinux联盟
   } fVZLinux联盟
   fVZLinux联盟
   </script> fVZLinux联盟
   fVZLinux联盟
  其中js部分可能写的有点不太清楚,大虾们看了请指点下. fVZLinux联盟
  还有就是我尝试了添加一个Calender控件使用同样的方法,始终不能加载动画进去,看了下源代码,发现Calender控件生成后是个Table,只有Table拥有ID.每一个数字中不拥有ID.非常郁闷.大虾们如果知道如何将动画事件加载上去,请教教小弟我~~~~~~~ fVZLinux联盟
Linux联盟收集整理 ,转贴请标明原始链接,如有任何疑问欢迎来本站Linux论坛讨论
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
无相关信息