我在表单页面上有一个按钮,可以打开一个弹出窗口,用户可以在其中计算各种选项的价格,然后再提交表单。
但是,我希望打开弹出窗口的按钮在窗口打开时禁用,而在窗口关闭时启用。
禁用按钮很简单:calculatorButton.disabled = true;
在点击事件中工作得很好。
我无法解决的是如何在弹出窗口关闭时再次启用该按钮。
newWindow.onunload
没有工作,newWindow.onbeforeunload
也没有工作。
最佳答案
你可以设置一个计时器来检查子窗口是否已经关闭:
var child = window.open();
var id = setInterval(function () {
if (child.closed) {
clearInterval(id);
calculatorButton.disabled = false;
}
}, 100); // check every 100ms
也就是说,我不会禁用按钮,而是像这样检查 closed
:
var child = window.open();
calculatorButton.onclick = function () {
if (!child.closed) return;
// else do something
};
顺便说一句,我从未使用过closed
:http://www.w3schools.com/jsref/prop_win_closed.asp .
关于javascript - 关闭弹出窗口后重新启用按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20172288/