A页面Page_Load里用IsPostBack()判断过吗?

解决方案 »

  1.   

    protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                if (Session["error_type"] != null)
                {
                    Label1.Text = Session["error_type"].ToString();
                }
            }
        }
    还是不行,这回再点次按钮也没用了...
      

  2.   

    b/s 是无状态的,如果错误,不要指望能从服务端主动发送信息去客户端,你可以这样如果错误
    b页面读取一个错误画面图像,然后binarywrite
      

  3.   

    我也碰到过类似的问题,你试下
    在开启b画面时候加一个 __doPostBack(eventTarget, eventArgument)
      

  4.   

    在调用画面B的地方,我的是这样的(传的参数太多了,我删掉了,'ListAssistant1$btnQuery'就是调用我的这个用户控件的查询按钮,再做一次查询动作)
    this.ClientScript.RegisterStartupScript(typeof(int), "1", "<script language=javascript>function ShowForm() {showModalDialog('SB010607M_Edit.aspx?。edge: Raised; center: yes; help: no; resizable: no; status: no;self.location.href=self.location.href;'); __doPostBack('ListAssistant1$btnQuery','');}</script>");
                this.ClientScript.RegisterStartupScript(typeof(int), "2", "<script language=javascript>window.attachEvent('onload',ShowForm)</script>");
      

  5.   

    我试着改了下,还是不行。A页面调用B页面代码如下:   
    protected void Button1_Click(object sender, EventArgs e)
        {
            ImageButton1.ImageUrl = "TCP.aspx";       
            this.ClientScript.RegisterStartupScript(typeof(int), "1", "<script language=javascript>function ShowForm() { __doPostBack('Button1','');}</script>");
        }
    楼上朋友帮我再看看哪错了?
      

  6.   

    你的Session引用是放在哪个位置的?不可以放在页面A的Page_Load当中,因为这样页面A会先去找这个Session,当然第一次无法找到。
      

  7.   

    可是放在BUTTON1_CLICK下也点2次才出来
      

  8.   

    A这里会Load完整个页面,不是等B把图片读完以后才Load剩下的,你将ImageUrl链接到B,这里完成以后,就会直接跳过去检查Session,很明显在这段时间B还不可能得到错误,也就是说,A还在等这个Session。如果要做也不是不可以。你可以试试看在设定了Url以后,while (Session["ImageStatus"]==null);
    if (!Session["ImageStatus"].ToString().Equals("OK"))
    {
    //清空Session为下一次准备
    Session["ImageStatus"]=null;
    // 图片设定出错,这里执行你指定的代码
    }在B中,每次设定好了图片,如没有错误,就用
    Session["ImageStatus"]="OK";不保证可以用,因为我自己没有试验过。
      

  9.   

    从A到B,可以认为A为B的父窗口
    执行完B页面操作用用JS刷新父窗口试试