这两天一直碰到它,却总是不明白,甚至一开始连回传都不知道是啥。。现在终于理解了,分享给大家,当然,如有不妥之处,还请大家不吝指教!

解释

    要想明白IsPostback,先来看看下面的这张图:
    
   
    第一次加载页面的的时候就会产生第一个循环:1和2→3→4→5a,此时IsPostBack为false;
    第二次及以后加载页面的时候即回传就会产生第二个循环:5b→6→7,这个时候IsPostBack为true。
   
  其实,页面在首次加载后向服务器提交数据,然后服务器把处理好的数据传递到客户端并显示出来,就叫postback, ispostback只是一个属性,即判断页面是否是回传,if(!Ispostback)就表示页面是首次加载,这是很常用的一个判断方式.一个页面只能加载一次,但可以在加载后反复postback.

使用方法

    IsPostBack一般用在Page_Load事件中,它的具体用法可以通过下面这个简单的例子来理解一下:

       在Web页面中添加一个文本框TextBox1和一个命令按钮Button1
        <asp:TextBox ID="TextBox1" runat="server" Text=""></asp:TextBox>
   
<asp:Button ID="Button1" runat="server" Text="清空" />

       代码:
        protected void Page_Load(object sender, EventArgs e)
{
//第一次加载
if (!Page.IsPostBack)
{
TextBox1.Text = "练习";
}
//回传,即第二次或者第N次加载
else
{
TextBox1.Text = "";
}
}
运行效果:当页面加载的时候显示的结果为:

点击“清空”命令按钮(没有任何代码),该过程将会提交表单到服务器,将会产生回传,运行结果如下:

总结

     IsPostBack 是Page对象的一个重要属性。这是一个只读的Boolean类型属性,它可以指示页面是第一次加载还是为了响应客户端回传而进行的加载。有经验的程序员通常将一些耗费资源的操作(例如,从数据库获得数据或者构造列表项)放在页面第一次加载时执行。如果页面回传到服务器并再次加载,就无须重复这些操作了。因为,任何输入或构建的数据多已被视图状态(ViewState)自动保留在后续的回传中。

IsPostback小结的更多相关文章

  1. IsPostback的原理

    ispostback:就是判断页面是首次加载的,还是数据回发(有get或者post请求过的)后的页面.上代码吧,直观点. 1.asp.net页面 <body> <form id=&q ...

  2. 从零开始编写自己的C#框架(26)——小结

    一直想写个总结,不过实在太忙了,所以一直拖啊拖啊,拖到现在,不过也好,有了这段时间的沉淀,发现自己又有了小小的进步.哈哈...... 原想框架开发的相关开发步骤.文档.代码.功能.部署等都简单的讲过了 ...

  3. Python自然语言处理工具小结

    Python自然语言处理工具小结 作者:白宁超 2016年11月21日21:45:26 目录 [Python NLP]干货!详述Python NLTK下如何使用stanford NLP工具包(1) [ ...

  4. java单向加密算法小结(2)--MD5哈希算法

    上一篇文章整理了Base64算法的相关知识,严格来说,Base64只能算是一种编码方式而非加密算法,这一篇要说的MD5,其实也不算是加密算法,而是一种哈希算法,即将目标文本转化为固定长度,不可逆的字符 ...

  5. iOS--->微信支付小结

    iOS--->微信支付小结 说起支付,除了支付宝支付之外,微信支付也是我们三方支付中最重要的方式之一,承接上面总结的支付宝,接下来把微信支付也总结了一下 ***那么首先还是由公司去创建并申请使用 ...

  6. iOS 之UITextFiled/UITextView小结

    一:编辑被键盘遮挡的问题 参考自:http://blog.csdn.net/windkisshao/article/details/21398521 1.自定方法 ,用于移动视图 -(void)mov ...

  7. K近邻法(KNN)原理小结

    K近邻法(k-nearst neighbors,KNN)是一种很基本的机器学习方法了,在我们平常的生活中也会不自主的应用.比如,我们判断一个人的人品,只需要观察他来往最密切的几个人的人品好坏就可以得出 ...

  8. scikit-learn随机森林调参小结

    在Bagging与随机森林算法原理小结中,我们对随机森林(Random Forest, 以下简称RF)的原理做了总结.本文就从实践的角度对RF做一个总结.重点讲述scikit-learn中RF的调参注 ...

  9. Bagging与随机森林算法原理小结

    在集成学习原理小结中,我们讲到了集成学习有两个流派,一个是boosting派系,它的特点是各个弱学习器之间有依赖关系.另一种是bagging流派,它的特点是各个弱学习器之间没有依赖关系,可以并行拟合. ...

随机推荐

  1. MySQL数据库之存储过程与存储函数

    1 引言 存储过程和存储函数类似于面向对象程序设计语言中的方法,可以简化代码,提高代码的重用性.本文主要介绍如何创建存储过程和存储函数,以及存储过程与函数的使用.修改.删除等操作. 2 存储过程与存储 ...

  2. oracle 编码

    select * from nls_database_parameters where parameter ='NLS_CHARACTERSET'; PARAMETER VALUE --------- ...

  3. windows10 卸载 Docker 和 DockerNAT

    删除docker程序 记事本新建脚本文件 a.ps1,内容如下: $ErrorActionPreference = "SilentlyContinue" kill -force - ...

  4. CodeForces700E Cool Slogans

    感谢dalaoWJZ的讲解. 我们对于每一个串a[i]相当于在他parent的right集合里找一个出现位置在id-len[x]+len[parent]到id[x]-1区间的 用主席树判存在性即可. ...

  5. [TC11326]ImpossibleGame

    [TC11326]ImpossibleGame 题目大意: 一类字符串仅由'A','B','C','D'四种字母组成.对于这样的一个字符串\(S\),可以用以下两种方式之一修改这个字符串: 交换\(S ...

  6. [JZOJ4786]小a的强迫症

    [JZOJ4786]小a的强迫症 题目大意: 有\(n(n\le10^5)\)种颜色的珠子,第\(i\)种颜色有\(num[i]\)个.你要把这些珠子排成一排,使得第\(i\)种颜色的最后一个珠子一定 ...

  7. [AHOI2013]作业

    [AHOI2013]作业 题目大意: 给定一个长度为\(n(n\le10^5)\)的数列\(A(1\le A_i\le n)\).\(m(m\le10^6)\)次询问,每次询问区间\([l,r]\)内 ...

  8. 【BZOJ-4212】神牛的养成计划 Trie树 + 可持久化Trie树

    4212: 神牛的养成计划 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 136  Solved: 27[Submit][Status][Discus ...

  9. CentOS 7 yum 安装subversion

    yum list installed | grep subversionyum install subversioncd /var/wwwsvn -hsvn co svn://121.196.226. ...

  10. Implementation of Serial Wire JTAG flash programming in ARM Cortex M3 Processors

    Implementation of Serial Wire JTAG flash programming in ARM Cortex M3 Processors The goal of the pro ...