日期:2014-05-17  浏览次数:20627 次

子父窗口传值问题!!求大神帮忙
我想通过子窗口向父窗口传一个名字同时还要把名字对应的ID 也一起传过去 怎么实现
我现在能实现的是只能传一个过去


比如: 我父窗口有个选择业务员 我一点弹出个子窗口,子窗口把所有的业务员都列出来了,我是用的checkbox  选中就传值回去了  
但是我想要传名字回去的同时也把选中的业务员的ID也传过去 
有什么好办法!!
------最佳解决方案--------------------
引用:
数组:var array = new Array();
array[0] = name;
array[1] = ID;
window.opener.document.getElementById("caller").value = array;

字符串:var returnValues = "name,ID";
window.opener.document.……


Thank you!! 我试试
------其他解决方案--------------------
引用:
模式窗口吗?
如果是,
JavaScript code?1vReturnValue = window.showModalDialog(sURL [, vArguments] [, sFeatures])
showModalDialog 方法可以的用 vArguments 参数将参数传给子窗体

子窗体给  JavaScript code?1window.retu……



没有模式框 而且我是要子给父传两个值  
还是要谢谢你的帮助
------其他解决方案--------------------
什么意思?  直接用参数传不行吗?
------其他解决方案--------------------
引用:
组成一个数组或字符串传回去

怎么组?求解释。。。
------其他解决方案--------------------
模式窗口吗?
如果是,
vReturnValue = window.showModalDialog(sURL [, vArguments] [, sFeatures])

showModalDialog 方法可以的用 vArguments 参数将参数传给子窗体

子窗体给  
window.returnValue [ = vValue ]

returnValue 赋值,那么父窗体的 showModalDialog 方法返回值 vReturnValue 就是子窗体赋的值。
------其他解决方案--------------------
如果其他信息时已知的用字符串分隔解析试试   不是的话用ajax从数据库获取试试
------其他解决方案--------------------
是传参数 但是我想传回去两个参数
------其他解决方案--------------------
这是方法代码:  
<table width="500" height="450">
<tr><th colspan="4" height="24">业务员列表</th></tr>
<tr>
<s:iterator value="empList" var="user" status="st">
<td><input onclick="setIcpCode();" type="checkbox" id="<s:property value="#st.status"/>" value="<s:property value="#user.empName"/>"/>
<input type="hidden" id="inps" name="sales" value="<s:property value="#user.empId"/>" />
<s:property value="#user.empName"/>
</td>
<s:if test="#st.modulus(4) == 0">
<s:if test="#st.last">
</tr>
</s:if><s:else>
<tr></tr>
</s:else>
</s:if>
</s:iterator>
</table>
</form>
  </body>
   <script type="text/javascript">
function setIcpCode() {
var chkValue ="";
var chk=document.getElementsByTagName("input");
for(var i=0;i<chk.length;i++){
if(chk[i].checked){
chkValue =chk[i].value;
}
}
    window.opener.document.getElementById("caller").value=chkValue;