我正在尝试使用以下代码打开一个新窗口。它打开一个新窗口,但其URL为“ about:blank”。如何更改此网址并提供自定义网址。
private native void openPrintWindow(String contents) /*-{
var printWindow = window.open("", "PrintWin", false);
printWindow.document.open("text/html","replace");
if (printWindow && printWindow.top) {
printWindow.document.write(contents);
} else {
alert("The print feature works by opening a popup window, but our popup window was blocked by your browser. If you can disable the blocker temporarily, you'll be able to print here. Sorry!");
}
}-*/;
答案 0 :(得分:0)
它为空,因为window.open
方法的第一个参数为空字符串。查看一些示例here。所以应该是这样的:
window.open("https://stackoverflow.com", "PrintWin", false);
从您的代码中,我看到您想通过其中包含一些HTML内容的自定义URL打开一个新窗口。您无法以这种方式这样做。如果您输入一些URL,浏览器将尝试通过输入GET request来打开此URL。
您想要实现的解决方案是或多或少地MVC way(请注意,这不是一个完全正确的MVC解决方案,只是一个指导):
content
存储在某个位置(最好的选项在服务器端,但是也可以将其存储在客户端)content
(先前存储在某处)并在此新打开的窗口中显示。