【问题标题】:Writing to a new window写入新窗口
【发布时间】:2011-05-10 13:00:08
【问题描述】:

我试图让一些简单的 javascript 在 gwt 中工作,但一直失败。

代码:

public static native void createWindow() /*-{   
    var wndRef = $wnd.open('','edit');
    var divTag = document.createElement("div");        
        divTag.id = "div1";

        divTag.setAttribute("align","center");    
        divTag.style.margin = "0px auto";

        divTag.innerHTML = "blah blah blah";

        wndRef.document.body.appendChild(divTag);
    }-*/;

我正在尝试打开一个新窗口并向其中写入内容

问题: 目前此代码会打开一个新窗口,但它是空的。

我如何向它写入内容?是我做错了什么还是我对 gwt 的期望太高了?

上下文: 我的最终目标是打开一个新窗口,并通过 java 方法将我的表单面板和各种小部件插入其中。

【问题讨论】:

    标签: gwt new-window


    【解决方案1】:

    GWT 编译成 Javascript,所以 GWT 可以做 JS 可以做的事情。

    如果您想打开一个新窗口并向其中注入一些内容,那么这是正确的方法:

    var win = window.open("", "win", "width=300,height=200"); // a window object
    win.document.open("text/html", "replace");
    win.document.write("<HTML><HEAD><TITLE>New Document</TITLE></HEAD><BODY>Hello, world!</BODY></HTML>");
    win.document.close(); 
    

    【讨论】:

    • 谢谢彼得,我得到它的工作方式很想知道为什么上面的技术不起作用我以为我只是在元素和文档上使用函数调用来做同样的事情。
    • 感谢 Peter,这适用于除 IE 10 以外的所有浏览器(惊喜!惊喜)。你有解决办法吗?
    猜你喜欢
    • 2013-02-10
    • 2010-12-04
    • 1970-01-01
    • 2015-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多