0

我正在使用richFaces 3.3.3。

我需要使用简单的 URL 使 menuItem 打开一个新选项卡……例如 google.com。现在我尝试了这段代码:

HtmlMenuItem menuItem = new HtmlMenuItem();
menuItem.setid("id");
menuItem.setValue("My menu link new tab");

menuItem.setSubmitMode("server");
menuItem.setTarget("_blank");
menuItem.setOnClick("document.location.href='www.gooogle.com'");

但这使我当前的标签被重定向到谷歌,并打开一个带有我所在上下文的新标签。我想留在我的地方,新标签“_blank”转到谷歌。

我试图用 onComplete 替换 onClick,但这也会使新选项卡进入我的上下文。但不要执行我试图将 HtmlOutputLink 作为我的 menuItem 的子项,但不执行对 outPutLink 的单击 .. 对 menuItem 执行单击...

HtmlMenuItem menuItem = new HtmlMenuItem();
menuItem.setid("id");
menuItem.setValue("My menu link new tab");
HtmlOutputLink cLink = new HtmlOutputLink();
cLink.setTarget("_blank");
cLink.setValue("www.google.com");
menuItem.getChildren().add(cLink);
4

2 回答 2

3

您只能使用 OutputLink,例如:

HtmlOutputLink cLink = new HtmlOutputLink();
cLink.setValue("http://www.google.com");
cLink.setTarget("_blank");
HtmlOutputLabel label = new HtmlOutputLabel();
label.setValue("Google");
cLink.getChildren().add(label);

因此,只需在某个组件上添加您的链接。也许 HtmlMenuItem 使用 javascript 打开页面,您的浏览器将其视为弹出窗口。

于 2012-05-18T19:25:30.830 回答
0

你在用这个吗?<ui:include src="#{bean.link}"/>

你的问题不是很精确,所以我只能想出这个主意......

于 2012-05-16T15:41:34.353 回答