我试图将值从弹出窗口传递到Java Bean并关闭窗口。发生的事情是值传递JBeans但窗口保持打开状态,我关闭弹出窗口并且不传递值。任何人都可以帮助我完成这项工作。父窗口和子窗口使用相同的JBean
家长代码:
<script type="text/javascript">
child_open = function () {
var m = document.getElementById('clickForm');
m.style.display = 'block';
m.onclick = refocus;
m.data = data;
m.submit();
};
</script>
...
<FORM ID="clickForm" METHOD=POST action="child.jsp" target="TheWindow">
...
<br> <INPUT TYPE=SUBMIT VALUE="Submit" onclick="child_open()"> <br>
</FORM>
子代码(弹出窗口)
<script type="text/javascript">
closeChild = function ()
{
window.opener.location.reload();
// if I close it, then data is no passed to beans
// if I leave it open, then data is passed
window.close();
}
</script>
...
<FORM ID="clickForm" METHOD="POST">
<br>
<DIV ALIGN="left">
<INPUT TYPE="submit" VALUE="Done!" onclick="closeChild()" formtarget="_parent"/>
</DIV>
...
</FORM>
答案 0 :(得分:0)
尝试查看local storage。假设父和子来自同一个域,他们可以看到公共数据存储。孩子捕获您需要的东西并持续存储到本地存储。然后,父母将读取存储空间以获取值。