一直都是使用jquery的$.ajax,由于刚刚加入的公司是用asp.net的,webform与之前的ajax加在一起显得很混乱,后来发现asp.net已经封装了一下ajax功能,就查了一下,并且做了测试,写出来,备忘:

前台代码:

             <asp:ScriptManager ID="ScriptManager1" runat="server" />
<asp:TextBox ID="tboutup" runat="server"></asp:TextBox>​
<asp:Button ID="btnouttg" Text="非异步按钮,但是被作为触发器"
OnClick="Button1_Click" runat="server" />
<asp:Button ID="btnoutnotg" Text="非异步按钮" runat="server" />
<asp:UpdatePanel ID="UpdatePanel1" UpdateMode="Conditional" runat="server">
<Triggers>
<asp:AsyncPostBackTrigger ControlID="btnouttg" />
</Triggers>
<ContentTemplate>
<asp:TextBox ID="tbinup" runat="server"></asp:TextBox>
<asp:Button ID="btninup" Text="异步按钮" OnClick="btninup_Click" runat="server" />
</ContentTemplate>
</asp:UpdatePanel>

后台代码:

 public partial class UpdatePanelTriggers : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{ }
protected void Button1_Click(object sender, EventArgs e)
{
tboutup.Text += tboutup.Text;
tbinup.Text += tbinup.Text;
} protected void btninup_Click(object sender, EventArgs e)
{
tboutup.Text += tboutup.Text;
tbinup.Text += tbinup.Text;
}
}
 
    1. 非异步按钮,一旦被绑定,便不会引起全局刷新,只能引起局部刷新了。
    2. 当某一回发事情被触发时,判断是否为UpdatePanel的异步事件,若是,则将所有的viewstate带回服务器,处理后,UpdatePanel内部控件的视图状态更新,其它的不更新。
    3. 对于触发UpdatePanel刷新的事件:
      1. ​在UpdatePanel的字标签<Triggers>中指定能触发异步刷新的控件或者事件。
      2. 将UpdateMode设为Always则页面上所有的回发事件都会触异步刷新。
      3. 将UpdateMode设为Conditional的时候,只有Triggers定义的触发以及UpdatePanel的子控件的事件才会触发。
      4. 将ChildrenAsTriggers设为false时,子控件postback时候无法触发异步刷新(这个控件同时也无法触发页面的事件,所以。。。废了。。。)。
      5. UpdatePanel的子控件只能触发自己的,无法触发外层UpdatePanel刷新。
      6. 显式调用UpdatePanel的Update方法:
          使用此方法一般是想在后台判定是否局部更新UpdatePanel,此时,要禁止UpdatePanel未经允许的刷新,所以,要设Conditional,且ChildrenAsTriggers设为false,然后在后台设置UpdatePanel.Update();

asp.net自带的异步刷新控件使用的更多相关文章

  1. 解决方案:带格式化文本控件( RichText)的模板如果在InfoPath的浏览器中加载可能出现 COM 组件的80040154错误

      建议大家在微软的组件出现问题时,在GOOGLE上搜索解决方案,一般来说,总有结果:  带格式化文本控件( RichText)的模板如果在InfoPath的浏览器中加载,可能出现 COM 组件的80 ...

  2. asp.net 弹出式日历控件 选择日期 Calendar控件

    原文地址:asp.net 弹出式日历控件 选择日期 Calendar控件 作者:逸苡 html代码: <%@ Page Language="C#" CodeFile=&quo ...

  3. 让DELPHI自带的richedit控件显示图片

    让DELPHI自带的richedit控件显示图片 unit RichEx; { 2005-03-04 LiChengbin Added: Insert bitmap or gif into RichE ...

  4. c# 通过.net自带的chart控件绘制饼图pie chart

    c# 通过.net自带的chart控件绘制饼图pie chart   需要实现的目标是: 1.将数据绑定到pie的后台数据中,自动生成饼图. 2.生成的饼图有详细文字的说明. 具体的实现步骤: > ...

  5. ASP.NET MVC 中使用用户控件——转

    讲讲怎么在 ASP.NET MVC2中使用用户控件.首先我们新建一个用户控件,   我们命名为SelectGroup.ascx,代码如下 <%@ Control Language="C ...

  6. ASP.NET的面包屑导航控件、树形导航控件、菜单控件

    原文:http://blog.csdn.net/pan_junbiao/article/details/8579293 ASP.NET的面包屑导航控件.树形导航控件.菜单控件. 1. 面包屑导航控件— ...

  7. asp.net 分页-自己写分页控件

    去年就发表过asp.net 分页-利用后台直接生成html分页 ,那种方法只是单纯的实现了分页,基本不能使用,那时就想写个自己的分页控件,无奈能力有限.最近有点时间了,就自己做出了这个分页控件.我承认 ...

  8. ASP开发中服务器控件和普通控件的区别

    1.对于服务器按钮控件(即<asp:Button>类型的按钮):服务器响应事件:OnClick客户端响应属性:OnClientClick 2.对于html按钮控件(即<input t ...

  9. 设置VS2010中自带的ActiveX控件测试容器TstCon

    ActiveX控件:可以看做一个极小的服务器应用程序,他不能单独运行,需要嵌入到某个程序中才可以运行,我们可以自己写一个程序来测试自己写的程序(具体方法在下一篇文章阐述),第二种方法是利用VS(本人编 ...

随机推荐

  1. Magento后台界面全局样式修改之——font-weight

    路径: \app\design\adminhtml\Magento\backend\web\app\setup\styles\less\lib\_variables.less

  2. Android带返回值的窗口跳转

    1.AndroidManifest.xml <?xml version="1.0" encoding="utf-8"?> <manifest ...

  3. 设计模式-外观模式(Facade)

    简介 外观模式(Facade),将外部与内部子系统的通信通过一个统一的门面对象进行. 由两部分组成: 门面角色:供外部调用,内部可能组装了多个子系统,多个方法. 子系统角色:子系统的方法也可以直接供外 ...

  4. ubuntu 字体 android stuido 汉字 显示 方块

    Ubuntu 12.04 LTS 中安装 windows 字体   ubuntu 中的中文字体看着总觉的有点不爽,于是百度了下,这里记录下怎么在 ubuntu 12.04 中安装 windows 字体 ...

  5. 【项目相关】MVC中将WebUploader进行封装

    昨天初步将webuploader用在了项目中,但紧接着就发现了一个问题,每一个页面都需要写那么多初始化webUploader的代码,这样肯定是我不能接受的,于是花了半天时间对该控件进行了封装. 最后, ...

  6. C# .Net三层架构[转]

    C# .Net三层架构[转] 编写人:CC阿爸 2014-3-14 希望朋友们留下自己对三层架构的理解... 三层体系结构的概念     用户界面表示层(USL) 业务逻辑层(BLL) 数据访问层(D ...

  7. Git客户端图文详解如何安装配置GitHub操作流程攻略

    收藏自 http://www.ihref.com/read-16377.html Git介绍 分布式 : Git版本控制系统是一个分布式的系统, 是用来保存工程源代码历史状态的命令行工具; 保存点 : ...

  8. 【原】SBT构建Scala应用

    [转帖] 原文地址:https://github.com/CSUG/real_world_scala/blob/master/02_sbt.markdown 尊重版权,尊重他人劳动成果,转帖请注明原文 ...

  9. android 输出.txt 文本换行问题

    // 获取当前日期和时间 Calendar cal = Calendar.getInstance(); String fileName = cal.get(Calendar.YEAR) + " ...

  10. 【转载】input 中 type='text' 的提交问题

    原文链接:http://www.nowamagic.net/html/html_AboutInputSummit.php 有时候我们希望回车键敲在文本框(input element)里来提交表单(fo ...