window.opener传值问题

来源:百度知道 编辑:UC知道 时间:2024/07/05 08:10:26
在父窗口window.open()一个子窗口。并定义一个变量i。
在子窗口输入一个值j然后window.opener.i=j;
这样能传过去。但我在子窗口最后加了个window.close();就无法传值了。
请问是否有办法解决这个问题。使我传递值之后再关闭子窗口。
代码如下:
父窗口:parent.jsp
<script>
var i;
window.open('<%=contextPath%>/usermanage/newscontrol/cd.jsp);
</script>
<input type="button" onclick="alert(i)">
子窗口:cd.jsp
<script>
function subm(){
window.opener.i=5;
window.close();
}
</script>
<input type="button" onclick="subm()">

你可以在父窗口放一个
<input id="fromChild" type="hidden" />
<input type="button"
onclick="alert(document.getElementById('fromChild').value)">

在子窗口中:
function subm(){
window.opener.document.getElementById('fromChild').value=5;
window.close();
}

这样既可