一直都是使用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. WP_3种磁贴效果设置

    private void ApplicationBarIconButton_Click_1(object sender, EventArgs e) { var tileData = new FlipT ...

  2. new_things

    'NapCat' in AppStore for reading codes from github. and the ----minibufexpl                |  + nerd ...

  3. javaSE第十九天

    第十九天    227 1:异常(理解)    227 (1) 定义    227 a)异常的引入    227 (2)异常的体系    228 (3)异常的处理:    229 A:JVM的默认处理 ...

  4. Windows Phone 开发起步之旅之一 平台环境的搭建

    最近大家都在写博客园的技术文章,按耐不住了,也把自己平时学习中遇到和学习到的一些东西写出来,供大家分享也好,自己留个纪念也好,有个可以查看的东西. 言归正传,随着微软对Windows Phone的投入 ...

  5. 软件工程 speedsnail 第二次冲刺5

    20150522 完成任务:蜗牛帧数变化已经实现,行走的蜗牛具有了动态的视觉效果: 遇到问题: 问题1 帧数大小根据人眼来设置 解决1 除29余0到14的为第一帧 明日任务: 蜗牛碰撞身体翻转

  6. WCF帮助类

    using BJSW.ZTFX.Client.Silverlight.MapBusinessService; using System.ServiceModel; using System.SL.Ap ...

  7. 错记-checkbox radio

    很多时候我想会用到浏览器默认的单选按钮或者复选框,比如说偷懒的时候或者心情不好的时候╮(╯﹏╰)╭, 在html结构里我想实现点击文字旁边的单选按钮就跟着选中或反之,像这样:

  8. Apache中RewriteCond规则参数介绍

    Apache中 RewriteCond语句对于我来说一直是个难点,多次试图去把它搞明白,都没有结构,这次我终于算大概知道它的意思了.RewriteCond就像我们程序中的if语句一样,表示如果符合某个 ...

  9. ubuntu 12.04 LTS(64位)安装apache2

    在网上找了很多文章,说法不一,不知道应该用哪种方法,后来想就用其中最简单的吧,装不好再卸了重装, 然后就...装上了,用的是tar包源码安装,下面是步骤 1.去官网下载apache2.2.25源码包, ...

  10. 1)C++对象大小计算

          C++对象的大小不同的编译器的实现是不一样的,以下仅讨论.net2003,其他编译的可能出现的结果以下也做了分析和猜测.在反推不同编译器实现的C++对象的大小时.对齐是一个很重要也容易被遗 ...