RT,下面是代碼    protected void gvReasonCode_SelectedIndexChanged(object sender, EventArgs e)
    {        
        Session["UpdateReasonID"] = ((LinkButton)gvReasonCode.Rows[gvReasonCode.SelectedIndex].Cells[1].FindControl("lbtnReasonID")).Text; 
    }
    protected void lbtnReasonID_Click(object sender, EventArgs e)
    {
        Response.Write("<script language=javascript>window.open('ReasonUpdate.aspx','','top=100;left=100;width=350,height=300,status=no,toolbar=no,menubar=no,location=no')</script>");
    }
    
這代碼有啥問題?WEB可以正常運行的.
就是CSS樣式丟失.我點了其它的按鍵又能恢復.
如查詢,新增數據.我試過在打開窗口後加個查詢(調用同樣的查詢方法)的語句,讓它重新查詢相同的條件.
但樣式還是丟失的.沒有恢復.
這麼就是說不是代碼的問題了?

解决方案 »

  1.   

    'ReasonUpdate.aspx页面的CSS文件放在哪个位置?
      

  2.   

    因为 Response.Write("<script language
    这句
    response.write输出是在html文件头上的,破坏了页面标准规范,所以……
    建议在页面上放一个literal控件,把Response.Write输出脚本换成
    literal1.Text="<script......"这样的形式就好了。
      

  3.   

    试下把Click事件中的代码换成
    System.Web.UI.ClientScriptManager csm = page.ClientScript;csm.RegisterClientScriptBlock(this.GetType(),"","<script language=javascript>window.open('ReasonUpdate.aspx','','top=100;left=100;width=350,height=300,status=no,toolbar=no,menubar=no,location=no')</script>");
      

  4.   

    你可以clear browser history  试试!
      

  5.   

    用Response.Write输出是非常不专业的做法,应该如4楼上用Page.ClientScript.RegisterStartupScript(this.GetType(), "", <script language=javascript>window.open('ReasonUpdate.aspx','','top=100;left=100;width=350,height=300,status=no,toolbar=no,menubar=no,location=no')</script>");
      

  6.   

    因为 Response.Write(" <script language 
    这句 
    response.write输出是在html文件头上的,破坏了页面标准规范,所以…… 
    建议在页面上放一个literal控件,把Response.Write输出脚本换成 
    literal1.Text=" <script......"这样的形式就好了。
      

  7.   

    没错,除了literal,用RegisterStartupScript也可以,只要把脚本输出到页面中即可.你本来写
        protected void lbtnReasonID_Click(object sender, EventArgs e)
        {
            Response.Write("<script language=javascript>window.open('ReasonUpdate.aspx','','top=100;left=100;width=350,height=300,status=no,toolbar=no,menubar=no,location=no')</script>");
        }改成
        protected void lbtnReasonID_Click(object sender, EventArgs e)
        {
    //页面上要先加一个literal控件
            literal1.Text="<script language=javascript>window.open('ReasonUpdate.aspx','','top=100;left=100;width=350,height=300,status=no,toolbar=no,menubar=no,location=no')</script>";
        }
    或者
        protected void lbtnReasonID_Click(object sender, EventArgs e)
        {
    Page.ClientScript.RegisterStartupScript(this.GetType(), "", <script language=javascript>window.open('ReasonUpdate.aspx','','top=100;left=100;width=350,height=300,status=no,toolbar=no,menubar=no,location=no') </script>");
        }
    就可以了