作为超链接的GWT按钮
我试图创建一个“打开”按钮,将打开一个新的网站作为超链接的GWT按钮,gwt,Gwt,我试图创建一个“打开”按钮,将打开一个新的网站 getURL("new url"); 不幸的是,我不知道如何创建一个打开新网站的活动。 如何将超链接小部件注册到此ClickEvent: Button button = new Button("Open"); button.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { Hyperlink
getURL("new url");
不幸的是,我不知道如何创建一个打开新网站的活动。
如何将超链接小部件注册到此ClickEvent:
Button button = new Button("Open");
button.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) {
Hyperlink widget = new Hyperlink("Home Page", "Home");
}
});
rootPanel.add(button, 568, 275);
getURL("new url");
提前谢谢 您需要让事件处理程序请求URL更改,而不是让它添加新的小部件
getURL("new url");
您想在新窗口还是在同一窗口中打开它
getURL("new url");
一般来说,您可能希望单击处理程序代码使用History类或Window类打开不同的URL和/或操纵浏览器历史 单击按钮时,此代码将在当前窗口中打开链接:
Button button = new Button("Open");
button.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) {
Window.Location.assign("http://www.someurl.com");
}
});
rootPanel.add(button);
getURL("new url");
你不能和我一起做。您应该使用windowassign或类似的简单原生javascript方法来完成
Button button = new Button("Open");
button.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) {
Window.Location.assign("new url");
getURL("new url");
或
getURL("new url");
或将锚添加到面板
getURL("new url");
Anchor a = new Anchor("new page", "new url");
RootPanel.get().add(a);
}
});
rootPanel.add(button, 568, 275);
public static native String getURL(String url)/*-{
return $wnd.open(url, 'target=_blank')
}-*/;
GWT是一头野兽…不像我一开始想的那么容易对付。如果我熟悉GWT,我肯定会尽量使用历史类,因为我在Internet Explorer 9中的
$wnd.open(url,'target=_blank')
方法有问题。切换到Window.Location.assign(url)
为我解决了这个问题。所以,这似乎是一条路要走。