我在JSP页面中使用以下代码在弹出窗口打开时禁用父窗口
window.opener.document.body.disabled=true;
document.onmousedown = focusPopup;
document.onkeyup = focusPopup;
document.onmousemove = focusPopup;
function focusPopup() {
window.focus();
}
但它只适用于第一次,
当页面刷新或请求重新提交时,父窗口的所有控件,链接选项卡都会启用并可以使用/点击,
虽然它使父窗口显示为禁用,但它实际上不会禁用它。
我做错了什么?
答案 0 :(得分:0)
刷新页面时,将再次获取整个HTML。通过javascript完成的任何更改都将丢失。您将不得不添加其他逻辑来处理此类情况。有两种方法涉及“隐藏形式参数”和“Cookie”描述here,可以在这种情况下使用。
javacript所需的更改将是:
就我个人而言,我更喜欢基于表单的方法,因为基于cookie的方法可能会变得棘手(当弹出窗口关闭时,您需要清除cookie值,否则表单在下次打开时可能会显示为禁用!)。