在页面加载事件里有如此代码:    《*  p_id 是页面类的全局变量 *》
if (!IsPostBack)
    {
       if(Request.QueryString["product_id"]!=null&&Request.QueryString["product_id"].ToString()!=String.Empty)
                {
                    
                    p_id = Int32.Parse(Request.QueryString["product_id"].ToString());
                    
                }在页面加载后,我触发 一个按钮的点击事件, 发现p_id 为空。这是为什么 ????请您赐教。

解决方案 »

  1.   

    &&Request.QueryString["product_id"].ToString()!=String.Empty 去掉这个看看
      

  2.   

    具体原因是,点击按钮,页面回发,但不执行if(!ISPOSTBACK){}里的代码,p_id是全局变量,担不是静态的,所以被重置为初始值
      

  3.   


    Thank you very....very...very much !
    问题解决了,
    能麻烦你解释一下为什么变为静态的就OK了吗 ???谢谢!
      

  4.   

    可以不需要 if (!IsPostBack)
      

  5.   

    p_id = Int32.Parse(Request.QueryString["product_id"].ToString()); 
    点击只有上面的代码没执行。
      

  6.   

    无语ing......没见过B/S里边这么用静态的....真的很无语.....小白对小白,便是一对儿小白...
      

  7.   

     忍不住要回帖.
    现在见到了嘛... 这种情况 应该使用ViewState 或者隐藏域.