办法1:可以拼成xml格式的字符串<ret><a>aaa</a><b>bbb</b></ret>
办法2:组成数组new Array("aa","bb","ccc")
办法3:做成自定义对象?
o = new Object()
o.aa="aaaa"
o.bb="bbbb"

解决方案 »

  1.   

    也可以直接返回到父窗口的变量里
    showModalDialog("url",window)这样打开
    参见
    http://www.csdn.net/Develop/read_article.asp?id=15113
      

  2.   

    给你个例子
    两个文件
    3.htm<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    <script language=javascript>
    function showfaceWindow()
    {

    showModalDialog('4.htm',window,'dialogWidth:470px;dialogHeight:300px;scroll:no;center:yes;help:no;resizable:no;status:no');
    }
    </script>
    <form name=form1>
    <table>
    <tr>
    <td><img name=faceImage src="face01.gif"></td>
    <td>
    <input name=faceImageName type=text value="face01.gif"></td><td><input 
    name=showface type=button value="选择头像" 
    onclick="showfaceWindow()"></td>
    </tr>
    </table>
    </form><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<4.htm
    <script language=javascript>
    function showImageName(e)
    {
    var srcName=e.src;
    var imageName=srcName.split("/");
    alert(imageName[imageName.length-1]);
    window.dialogArguments.form1.faceImage.src = e.src;
    window.dialogArguments.form1.faceImageName.value = 
    imageName[imageName.length-1];
    window.close();
    }
    </script>
    <table border=1>
    <tr><td>
    <img src=face01.gif onclick=showImageName(this)>
    </td>
    <td>
    <img src=face02.gif onclick=showImageName(this)>
    </td>
    <td>
    <img src=face03.gif onclick=showImageName(this)>
    </td>
    </tr>
    <tr><td>
    <img src=face04.gif onclick=showImageName(this)>
    </td>
    <td>
    <img src=face05.gif onclick=showImageName(this)>
    </td>
    <td>
    <img src=face06.gif onclick=showImageName(this)>
    </td>
    </tr>
    <table>
      

  3.   

    to  hbhbhbhbhb1021(天外水火(我是SB,我要多努力)) window.dialogArguments=""
    window.dialogArguments.form1 undefined
    我用了form1为什么不可以
      

  4.   

    我用你的程序也是一样啊
    window.dialogArguments.form1 为空或不是对象
      

  5.   

    “但个别时候发现,模式对话框关闭的时候,数组会访问不到。”
    还没碰到过这种情况。
    怀疑可能是在数组的元素里有dialog里的某些对象,当窗口关闭后有的对象被销毁了
    “把多个参数组织成一个字符串,用逗号分号等隔开”
    这样做感觉不大好
      

  6.   

    to :  jzywh(江大鱼)
    说详细一点
      

  7.   

    to JK_10000(JK) 
    -------------------
    “数组会访问不到”的情况不是经常出现,而是偶尔出现。而且重复操作,错误结果也不一定能复现。
    我的分析结果是:
      在模式对话框关闭的时候,对象要释放掉。但原来对象占有的内存空间可能会被别的变量占走,也可能暂时不被占用(内存很大的时候)。而对话框回传的只是一个地址,按照这个地址去找数组元素,必然有时找不到,有时找到。
      简单数据类型如字符串和浮点数是按值传送,就不会出现上述弊端了。to w_lion(豆腐) 
    ------------
    var s="12,34,45";
    var arr=s.split(",");
    alert(arr[1]);   得到34
      
      

  8.   

    “数组会访问不到”
    -----
    如果js用的是java的概念,数组还在用,应该不会因内存回收而销毁。
    既然你确实碰到过“偶尔出现”的“数组会访问不到”,
    那我以后也去留意一下这种情况。
    ---因为平时都用数组来传的,所有比较关心这个问题。