您的位置:首页 > 其它

if(!IsPostBack)的使用

2011-09-21 13:19 155 查看
if(!IsPostBack)的使用

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

if(!this.IsPostBack)

{

}

通常用在page_load中,获取一个值,该值指示该页是否正为响应客户端回发而加载,或者它是否正被首次加载和访问,如果是为响应客户端回发而加载该页,则为true;否则为 false。

比如如果你在页面上按了一下按钮,那么在Page_load时,你就会看到isPostBack等于true;如果你的页面是第一次被打开,则返回false;

!this.IsPostBack就是一直取true,把这个页面里面的东西一直当成第一次打开

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

IsPostBack 由于用户交互(page.submit())提交页面而产生的加载,二次加载

isPostback属性获取一个值,该值指示该页是否正为响应客户端回发而加载,或者它是否正被首次加载和访问。如果是为响应客户端回发而加载该页,则为true;否则为 false(第一次加载)。

所以if(!IsPostBack)的意思就是如果不是了响应客户端回发而加载该页的时候执行{}里的数据---即第一次加载。IsPostBack的意思就是第二次(IsPostBack本身有回传信息),!IsPostBack的意思就是不是第二次---即第一次。所以你的以上代码最好放在里面,这样在你使用分页的时候就知道为什么了,你可以为你这datagird加入分页,然后分别把代码放在{}里面和外面看看效果,只有为第一次加载时执行此代码。

一个页面第一次显示的时候

isPostBack=false

然后你在这个页面上点击按钮或其它东西提交的时候,

isPostBack=true

一般这个函数里面的内容是指第一次打开这个页面的时候要做的事.

一般做一些初始化什么的东西.

.假设你在page_load()里定义textbox为空,在button_click事件里给写一段往数据库存textbox的值.当用户往 textbox里输入值以后,点击button时,就应该可以把往textbox里输入的值存到数据库里.可实际上,当点击button的时候,系统会自动先重新执行page_load(),也就是把柄textbox清空,再执行click 事件,你往数据库里存的值永远都是空.所以要在page_Load() 里加入if(!IsPostBack).

答2:

是第一次加载页面时Page.ispostback是false,当触发该页面的web控件时,产生回发,这时候 该属性会是true,所以要用if(!IsPostback)来判断,只在第一次进入页面时加载数据。

______________________________________________________________________________________________

答 3:

总之一句话,放在使page_load里的代码只执行一遍
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: