如何动态创建 <f:selectItem> 列表?

Posted

技术标签:

【中文标题】如何动态创建 <f:selectItem> 列表?【英文标题】:How to dynamically create a <f:selectItem> list? 【发布时间】:2011-01-26 22:53:28 【问题描述】:

有没有办法动态创建一个 selectItem 列表?我真的不想创建大量 bean 代码来让我的列表返回 List&lt;SelectItem&gt;

我试过了:

<ice:selectManyCheckbox>
    <ui:repeat var="product" value="#productListingService.list">
      <f:selectItem itemLabel="#product.description" value="#product.id"/>
    </ui:repeat>
</ice:selectManyCheckbox>

但它不起作用。

有什么想法吗?

【问题讨论】:

【参考方案1】:

请改用&lt;f:selectItems&gt;。它接受List&lt;SelectItem&gt;SelectItem[] 旁边的Map&lt;String, Object&gt; 作为值,其中映射键是项目标签,映射值是项目值。或者,如果您已经在 J​​SF 2.0 上,那么您可以使用 List&lt;SomeBean&gt; 代替 var 属性可以引用当前项目。

<f:selectItems value="#productListingService.list" var="product" 
    itemLabel="#product.description" itemValue="#product.id" />

另见:

Our &lt;h:selectOneMenu&gt; wiki page

【讨论】:

以上是关于如何动态创建 <f:selectItem> 列表?的主要内容,如果未能解决你的问题,请参考以下文章

如何在动态创建的表格中删除第2个特定的th

如何在childlayout中更新textview动态创建的textview?

c语言中创建动态链表

Java动态数组

linux下,有几个.so。如何将这几个动态库编译成一个动态库

C语言如何创建数组