环境:vs 2008, ie 8
问题:
A---父画面
B---子画面A 画面中 单击 按钮事件里(window.open)来打开B画面了B画面里 单击按钮的时候,关闭B画面,然后把B画面的值怎么负值给A画面的一个控件

解决方案 »

  1.   

    B页面里window.opener可以访问A
    window.close()关闭
      

  2.   

    补充说明:
    B画面的按钮事件是
     protected void Button1_Click(object sender, EventArgs e)
            {
                StringBuilder sbITMCD = new StringBuilder(); 
                //一段逻辑设置 sbITMCD 
                
                //想把sbITMCD 值传到A画面去。 
            }A画面怎么负值请指教
      

  3.   

    ASP.NET啊。。不懂
    纯JS就是上面说的那些了
      

  4.   

    Response.Write("<script>window.opener.document.getElementById('" + parentInput + "').value='" + returnMsg + "';window.close();</script>");直接输出试试 。
      

  5.   

    A画面包含控件:<input type="text" id="txtName"/>
        var obj=document.getElementById("txtName");
        obj.value=window.open(.......);B画面:页面关闭时,
        window.returnValue="B画面需要返回的值";
      

  6.   


    怎么结果 textbox里显示 [object] 呢?
      

  7.   

    父窗口有一个JS如:function setTextValue(obj){
                               this.控件ID.value=obj;
                                   }子窗口关闭的时候,执行一下这个JS就可以了,在protected void Button1_Click(object sender, EventArgs e)
    这个事件里写
     ClientScript.RegisterStartupScript(this.GetType(), "execJS", "<script type=\"text/javascript\">parent.setTextValue("这里写你要传的值")</script>");
      

  8.   

    这是一个很简单的过程,你首先应该理清思路。
    复杂的问题 一步步简单化。关闭窗口 赋值给原窗口。首先 关闭窗口  需要点击按钮来响应,那么给个按钮,再给按钮添加事件onclick=“方法名”
    然后将所有的操作放在方法里面操作。按钮就如同一个触发器。 
    在方法里面 
    首先   
    1.要获得要传递的值,通过访问页面中对象获得值。
    2.在新窗口传递值给原窗口,访问原窗口中的对象,将获得的值传递给它。window.opener.document.getElementById("textName").value=你要传递的值;(获得父窗口对象并赋值)
    最后  window.close();关闭窗口做这种题目理清自己的思路,看看问题出在哪里先,没什么难的,你就是不知道具体的操作方法,这些都是死的。建议你到网上下载JS书籍,从头到尾好好看下。上面都有详细说明,不然你的问题会没完没了,看书后就知道问题大概与哪个章节有关,自己再仔细看看就能搞定。