你上面这样做也是可以实现的
    但你还可以将init方法放在123.html的onload时间里调用
将传递的值放在
var str = window.open("123.html?value="+value,"newwindow","Height:600px; Width: 400px;Top: 100; 
                        Left: 100;resizable: no; status: no;scroll:no");

解决方案 »

  1.   

    子窗口可以用
    window.opener.a来调用父窗口的变量a,函数也一样
      

  2.   

    不建议在父窗口中调子窗口函数
    因为当子窗口没有完全加载完毕的时候会出现错误
    尽管有其他的办法可以弥补 但是不如在子窗口的onload自己调用来得实在但是子窗口用window.opener.[……](子窗口是用window.open方式打开) 来调用父窗口的全局变量或函数会好很多
      

  3.   

    1. 父窗口的值如何传到子窗口中。通过父窗口的句柄 windo.opener 可以访问你窗口以及内部的对象,
    当然就也可以赋值了。2. 父窗口如何调用子窗口的函数。 var wnd = window.open("123.html","newwindow","Height:600px; Width: 400px;Top: 100;
                            Left: 100;resizable: no; status: no;scroll:no");window.open返回的是子窗口的句柄,不是字符串。
    通过这个句柄就可以访问子窗口了。3.
    下面是我写的,老是不对。
    var str = window.open("123.html","newwindow","Height:600px; Width: 400px;Top: 100;
                            Left: 100;resizable: no; status: no;scroll:no");str.init(value);
    init(value)是子窗口的函数。
    子窗口会根据从父窗口传过来的值在init函数里初始化一些子窗口要的数值失败的原因可能如下:
    .str 对象为局部变量.调用str.ini(value)的时候访问不到.
    把str声明为全局对象..调用的时候,了窗口未装载完.
    对策:
    判断 str.readyState == "complete"
      

  4.   

    感谢各位,我在test,待会给大家散分
      

  5.   

    完成了父窗口:<input id=BLF_Ua_Button1 onclick=BLF_Ua_onclick(1) type=button value=Detail></td>function BLF_Ua_onclick(index)
    {
        window.open("123.html","newwindow","Height:400px; Width: 500px;Top: 100; Left: 100; 
                   resizable: no; status: no;scroll:no");
    }function inputAdvdFunKeyBlf_order(value)
    {
           document.getElementById("AdvdFunKeyBlf_order").value = value;
    }
    子窗口:function init()
    {
    AdvdFunKeyBlf_order_par = window.opener.document.getElementById("AdvdFunKeyBlf_order_child").value; for (i=0; i<4;i++)
    AdvdFunKeyBlf_order_new[i] = AdvdFunKeyBlf_order_par.charAt(i);
    ……
    }<body onLoad="init();">
    ……
    <input id=uiViewApplyButton onClick=btnOKonclick() type=button value=Apply name="">
    function btnOKonclick()
    {
    var value = AdvdFunKeyBlf_order_new;

    window.opener.inputAdvdFunKeyBlf_order(value);
    window.close();
    }