我正在开发 GWT 应用程序并使用
com.google.gwt.user.client.Window.open(pageUrl, "_blank", "");
打开新页面。它在调用时会在新选项卡中打开,例如,在单击按钮后直接打开。 但我决定在打开新页面之前在服务器上进行一些验证,并将上述方法的调用置于
public void onSuccess(Object response) {
}
它开始在新窗口而不是新标签页中打开页面(这仅适用于 Chrome,其他浏览器仍然在新标签页中打开它)。
谁能帮帮我?
我建立了一个小例子来说明这个问题:
button.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) {
Window.open("http://www.google.com/", "_blank", "");
MySampleApplicationServiceAsync serviceAsync = GWT.create(MySampleApplicationService.class);
serviceAsync.getMessage("Hello, Server!", new AsyncCallback() {
public void onFailure(Throwable caught) {
Window.alert("ERROR");
}
public void onSuccess(Object result) {
Window.open("http://www.bing.com/", "_blank", "");
}
}
);
}
});
- Firefox(3.6.8) 在新标签页中打开这两个页面。
- Chrome(6.0) 在新标签页中打开“google.com”,在新窗口中打开“bing.com”
- Opera(10.10) 在新标签中打开。
- IE(8.0) 可在新 Windows 中打开。
我将 igorbel 的答案标记为唯一正确的,因为我没有找到任何合适的方法来指定在所有情况下的相同行为。
最佳答案
我使用了这段代码,它适用于我在 google chrome 和 mozilla firefox 3.6.8 浏览器中 如果你想在新窗口中打开一个页面,你应该编写代码为
Window.open("www.google.com","_blank","enabled");
如果你想在新标签页中打开一个页面,你应该编写代码为
Window.open("www.google.com","_blank","");
关于java - GWT 在新选项卡中打开页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3907531/