【问题标题】:How to get all the selected items in a table?如何获取表格中所有选定的项目?
【发布时间】:2011-08-18 15:28:09
【问题描述】:

我的数据表组件有问题。我想创建一个带有复选框的数据表,例如 primefaces 展示中的多选示例。这是代码:

<p:dataTable id="table_cats" value="#{fooBean.catsList}" var="cat" selectionMode="single"   selection="#{fooBean.selectedCatsToDelete}">
<p:column selectionMode="multiple">
    <f:facet name="header">Remove</f:facet>
</p:column>
<p:column>
    <f:facet name="header">Cat Name</f:facet>
        <h:outputText value="#{cat.name}" />
    </p:column></p:dataTable>

所以,问题在于选择项目时。我不知道如何获取表格中所有选定的项目。谁能帮我解决这个问题?

【问题讨论】:

标签: datatable jsf-2 primefaces


【解决方案1】:

不清楚您的评论是什么意思“这个例子不起作用”。有没有错误?还是selectedCatsToDelete为空?

首先猜测是&lt;p:dataTable&gt; 中的selectionMode="single" 与列中的selectionMode="multiple"

尝试从表格标签中删除该属性。

【讨论】:

    【解决方案2】:

    它们都设置在#{fooBean.selectedCatsToDelete} 后面的属性中,因此它们可以在您挂接到某个命令链接/按钮的任何操作/侦听器方法中访问。

    例如

    <p:commandButton value="Remove" action="#{bean.remove}" />
    

    public void remove() {
        someService.remove(selectedCatsToDelete); // JSF has already put the selected items in selectedCatsToDelete.
    }
    

    【讨论】:

      猜你喜欢
      • 2017-08-23
      • 2011-08-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-10
      • 2011-06-17
      相关资源
      最近更新 更多