我在页面想做如下功能,当我点一个登陆按钮后,一旦判断是管理员,那么页面上自动呈现一个后台管理的按钮,但是,当我按了登陆后,页面无变化,但是,当我第2次按登陆按钮后,页面才有变化,这是怎么回事?但是象gridview这样的控件就可以做到自动变化,请高手能解答一下,页面刷新的机制么?

解决方案 »

  1.   

    Page.IsPostBack 是用来检查目前网页是否为第一次加载,当第一次浏览这个网页时Page.IsPostBack 会传回False,不是第一次浏览这个网页时就传回True 
    如页面一个checkbox控件的enableview允许保存视图状态=true,而且autopostback=true,那当选中checkbox后,触发poskback回发页面,页面的viewstate(一长串字符的字符串)回发给服务端
      

  2.   

    不是非常理解,大致是这样的,你post了页面之后,pageload以及后续的代码会执行按照顺序你先登陆了返回登陆成功的信息,然后dv去绑定了数据,然后后台程序完成了,页面也就显示出来了登陆后的界面,可能在这个过程中你没有加入添加按钮这个动作。
    这里就需要做些事情,在你的后台程序判断完登陆后,根据这个结果动态的给页面指定的地方加入一个button,以及对应的事件
    或者说当你整个页面加载完了,用js去添加一个按钮
    如果说是第二次才显示的话就应该是pageload的时候,ispostback的问题,首次提交时你页面加载完成比你的button添加的早,所以你看不见控件
      

  3.   

    ispostback , 起到重新刷新 数据处理的作用哦