opener.opener="";
加这一句试试

解决方案 »

  1.   

    opener.opener =“”不会刷新父窗口阿,我要刷新父窗口得到子窗口的一些值
      

  2.   

    是这样的,我先在父窗口中输入一些相关值,然后打开子窗口选择另外一些值,接着关闭子窗口同时将子窗口要传给父窗口的值保存在Session或者application中,同时栓新父窗口得到这些值,然后接着在父窗口中输入另外一些值并保存,如果将method设置为get,我就激发不了保存按钮的click事件了
      

  3.   

    不可能  是你get  post  的原因 代码贴出来 看看!
      

  4.   

    返回给父窗体的值很复杂吗?用showModalDialog不能实现?
      

  5.   

    可以使用ShowModalDialog。但是由于子窗口里面包含一个动态生成的很大的树,我不想在子窗口刷新页面来得到选择的值,我要使用window.open方法。不过返回父窗口就遇到了上面提到的这个问题
      

  6.   

    代码如下:
    父窗口中打开子窗口的代码:
    this.btnSelectCtl.Attributes.Add("onclick","window.open('select.aspx?id=0','newwin','toolbar=no,menubar=no,status=no,location=no,resizable=no,scrollbars=no,width=300,height=400,top=100,left=240');return false;");
    子窗口传过来值的获取if ( Session["fidFrame"] != null)
    {
    string[] strFidFrame = Session["fidFrame"].ToString().Trim().Split(',');
    this.txtFrameInfoLCtl.Text = strFidFrame[1].ToString();
    this.txtFrameInfoFid.Text = strFidFrame[0].ToString();
    }子窗口中的load函数
    private void Page_Load(object sender, System.EventArgs e)
    {
    // 在此处放置用户代码以初始化页面 if(!this.IsPostBack)
    {
    //参数fid,标明根节点的fid
    string strFid = Request.QueryString["fid"].ToString().Trim(); //显示组织结构图,每个节点对应一个checked按钮
    myum.InitTree(TreeFrame.Nodes,strFid);
    }
    }
    子窗口中确定按钮的单击事件:
    private void btnOK_Click(object sender, System.EventArgs e)
    {
    //判断并提示职能选择一个checked按钮
    this.getSelectedNodeCount(TreeFrame.Nodes); //获取所选的Fid字符串
    string strSetFid = this.getSelectedFid(TreeFrame.Nodes);
    string strFrameInfo = myds.GetFrameInfo(int.Parse(strSetFid));                string fidframe = strSetFid+","+strFrameInfo;
          Session["fidFrame"] = fidframe;
    //关闭当前窗口,并重新装载父窗口
    Response.Write("<script language='javascript'>opener.location.reload();window.close();</script>");
    }
    }
      

  7.   

    Response.Write("<script language='javascript'>opener.location.reload();window.close();</script>");
    向现在这样的刷新方式没有问题啊 用 get 方式就可以了!至于你说的使用get 不提交?? 是指的那部分啊?
      

  8.   

    完全没有必要通过Session 来传递值,你可以在子窗口关闭前调用父窗口的一个JavaScript方法,将值作为方法的参数,不就可以改变父窗口的值了吗?如下:
    父窗口页面定义一个JavaScript方法:
     function setValue(value){
        FormName.ElementName.value = value;
     }子窗口在关闭前调用: opener.window.setValue(value);