簡體   English   中英

Window.Open替換失敗

[英]Window.Open Replace fails

我有一個包含母版頁的頁面。 頁面上有一些JavaScript可以打開新窗口。

         function PopWin() {
        var ddl = document.getElementById("DropDownList1");
        var strField = "";
        if (ddl != null && ddl.selectedIndex > -1 && ddl.options[ddl.selectedIndex] != null)
            strField += ddl.options[ddl.selectedIndex].text;
        var win = window.open('Report.aspx?item=' + strField, 'Popup', 'width=1000,height=700,resizable=yes,top=5,left=5,scrollbars=yes,status=yes', false);
        win.focus();
    }

以及調用javascript的按鈕:

 <asp:Button ID="btnReport" runat="server" Text="Report" UseSubmitBehavior="False"
  OnClientClick="Popwin();" />

JavaScript的格式為window.open(URL,name,specs,replace)。
問題是,即使將replace設置為false,它仍然會替換當前窗口。 它需要打開一個全新的窗口,使之前的窗口保持原樣。

在使用VS 2010和IE 10開發時,這在我的PC上有效。將其放在登台服務器上會失敗,在生產服務器上也會失敗。

我繼承了整個應用程序,並進行了大量修復。 舊代碼有效。
並將新舊參數進行比較,除了將replace參數添加到false之外,其他操作都是相同的。

我還添加和更新了面板,這只是其他區別。 是的,我將其刪除,但仍然失敗。 我什至清除了瀏覽器緩存,但仍然失敗。 我在瀏覽器中查看了源代碼,並找到了新的javascript代碼。

還刪除了win.focus,它仍然替換了舊窗口。

在服務器上,它在FF中也失敗。

replace參數不是您想要的。 來自MSDN的報價:

布爾值 ,指定url是創建新條目還是替換窗口的歷史記錄列表中的當前條目。 僅當URL加載到同一窗口中時,此參數才生效。

要打開多個彈出窗口,您需要為每個新的彈出窗口使用不同的名稱。 您可以將打開的窗口的書保留在一個外部變量中,或者使用strField ,無論如何向'Popup'參數中添加一些內容以使其獨特。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM