陈斌彬的技术博客

Stay foolish,stay hungry

isPostBack

.net程序员首先需要了解什么是IsPostBack.

msdn上边有IsPostBack的定义:

获取一个值,该值指示该页是否正为响应客户端回发而加载,或者它是否正被首次加载和访问。

如果是为响应客户端回发而加载该页,则为true;否则为 false。

“为相应客户端回发而加载”,注意,这里的客户端的回发是指服务器端响应客户端的回发,这也就决定了该属性是由服务器控件的事件所引起。

对于javascript客户端脚本代码,由于只是运行在客户端,从而执引发不了该属性的执行。

!IsPostBack==ture 当前页面是第一次加载:

第一次加载页面时Page.ispostback是false,当触发该页面的web控件时,产生回发,

这时候该属性会是true,所以要用if(!IsPostback)来判断,只在第一次进入页面时加载数据。

简单来说,就是每次服务器端进行回发的时候,都会执行page_Load() 里的程序,

当我们添加IsPostBack时,IsPostBack里的程序只会在页面加载时执行一次,

以后无论服务器怎么回发,都不会调用IsPostBack里的程序。

Resource Reference