【发布时间】:2010-02-01 12:32:12
【问题描述】:
是否可以在我的<f:selectItem itemLabel="label" /> 周围设置<a href />,其中我的链接文本是itemLabel?
我正在使用普通的太阳组件。
【问题讨论】:
-
在 HTML 中是否可能获得所需的结果? f:selectItem 的父级是什么?
标签: jsf hyperlink selectonemenu
是否可以在我的<f:selectItem itemLabel="label" /> 周围设置<a href />,其中我的链接文本是itemLabel?
我正在使用普通的太阳组件。
【问题讨论】:
标签: jsf hyperlink selectonemenu
想要的结果在 HTML 中是不可能的。您需要为此添加一段 JavaScript。
<h:selectOneMenu onchange="window.location=this.options[this.selectedIndex].value">
<f:selectItems value="#{bean.links}" />
<h:selectOneMenu>
其中bean.getLinks() 返回一个List<SelectItem>,其中包含一个完整的URL 作为项目值。如果您想将链接显示为 值和标签,只需使用带有单个参数的 SelectItem 构造函数。
links = new List<SelectItem>();
links.add(new SelectItem("http://google.com"));
links.add(new SelectItem("http://stackoverflow.com"));
// ...
如果你想在视图中硬编码它们,那么你当然可以抓取f:selectItem:
<h:selectOneMenu onchange="window.location=this.options[this.selectedIndex].value">
<f:selectItem itemValue="http://google.com" />
<f:selectItem itemValue="http://stackoverflow.com" />
<h:selectOneMenu>
【讨论】: