使用window.open创建的文档永远不会达到"完成" readyState的

时间:2015-07-13 15:26:11

标签: javascript

我用window.open打开一个新窗口,我正在写一些html。问题是我加载了一个执行此操作的脚本:

SELECT r.*
FROM Room r
WHERE NOT EXISTS
(
    SELECT 1 FROM Booking b
    WHERE b.RoomNumber = r.RoomNumber 
    AND 
    (
         (@CheckIn >= b.CheckIn AND @CheckIn  <= b.CheckOut)
      OR (@CheckIn <= b.CheckIn AND @Checkout >= b.CheckIn)
    )
)

但是国家永远不会完成&#34; state和DOMcontentLoaded永远不会触发...奇怪的是,这并没有发生,因为有东西加载,不,一切都完全加载到这一刻。

有没有办法可以减少这种情况,以防这些事情永远不会发生?我想到了一个计时器,但感觉不太可靠......

2 个答案:

答案 0 :(得分:2)

写入文档时打开并关闭文档,以便知道文档何时完成。

winpop.document.open();
winpop.document.write("cccccc");
winpop.document.close();

其中winpop是对新窗口的引用。

答案 1 :(得分:0)

如果您观察不同事件何时开火,该怎么办?

 document.onreadystatechange = function () {
        if (document.readyState === "complete") {
            load_script();
        } else {
            document.addEventListener("DOMContentLoaded", function () {
                load_script();
            });
        }
    }