父页面:调用的时候把window作为参数传过去windonw.showModalDialog(url, window);
子页面:dialogArguments取得父窗口对象(就是父窗口的window对象)。
其他的就自己写吧。

解决方案 »

  1.   

    function topchick(sel_dest)
    {
    var tempstr = "";
    for(var i=0;i<sel_dest.length;i++)
    {
    tempstr += sel_dest.options[i].text + ",";
    }
    //window.dialogArguments.document.forms["form1"].text1.value = tempstr;
    window.returnValue="tempstr";
    window.close();
    }
    2种方法我都试了都没用 传不到父页面TEXT里面  为什么 
      

  2.   

    ModelWindow:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
        <HEAD>
            <title>Parent Webform</title>
    <script language="javascript">
    function OpenChild() 
    {
        var ParmA = retvalA.value;
        var ParmB = retvalB.value;
        var ParmC = retvalC.value;
        var MyArgs = new Array(ParmA, ParmB, ParmC);
        var WinSettings = "center:yes;resizable:no;dialogHeight:300px"
        //ALTER BELOW LINE - supply correct URL for Child Form
        var MyArgs = window.showModalDialog("ChildWebForm.htm", MyArgs, WinSettings);
        if (MyArgs == null)
        {
            window.alert("Nothing returned from child. No changes made to input boxes")
        }
        else
        {
            retvalA.value=MyArgs[0].toString();
            retvalB.value=MyArgs[1].toString();
            retvalC.value=MyArgs[2].toString();
        }
    }
    </script>
        </HEAD>
        <body>
            <P><INPUT id="retvalA" type="text" value="AAA"></P>
            <P><INPUT id="retvalB" type="text" value="BBB"></P>
            <P><INPUT id="retvalC" type="text" value="CCC"></P>
            <P><BUTTON onclick="OpenChild()" type="button">
                    Open Child Window</BUTTON>
            </P>
        </body>
    </HTML>ChildWebform:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
        <HEAD>
            <TITLE>Child Webform</TITLE>
    <script language="javascript">
    function Done() {
        var ParmA = tbParamA.value;
        var ParmB = tbParamB.value;
        var ParmC = tbParamC.value;
        var MyArgs = new Array(ParmA, ParmB, ParmC);
        window.returnValue = MyArgs;
        window.close();
    }
    function doInit() {
        var ParmA = "Aparm";
        var ParmB = "Bparm";
        var ParmC = "Cparm";
        var MyArgs = new Array(ParmA, ParmB, ParmC);
        MyArgs =  window.dialogArguments;
        tbParamA.value = MyArgs[0].toString();
        tbParamB.value = MyArgs[1].toString();
        tbParamC.value = MyArgs[2].toString();
    }
    </script>
        </HEAD>
        <BODY onload="doInit()">
            <P>Param A:<INPUT id="tbParamA" TYPE="text"></P>
            <P>Param B:<INPUT ID="tbParamB" TYPE="text"></P>
            <P>Param C:<INPUT ID="tbParamC" TYPE="text"></P>
            <BUTTON onclick="Done()" type="button">OK</BUTTON>
        </BODY>
    </HTML>