【问题标题】:Editable data table in primefaces with filteringprimefaces 中的可编辑数据表,带过滤功能
【发布时间】:2014-06-22 14:47:45
【问题描述】:

您好,我使用的是 primefaces 4.0 和 jsf 2x。在我的应用程序中,我有一个带有过滤功能的可编辑数据表。每当我过滤一行并单击编辑时,我都没有得到我选择的行值。

PFB 我的 Bean 类:

class MyBean{

    private List<MyEntity> details;
    private List<MyEntity> filteredDetails;
    private MyEntity entity;
    private DataTable dataTable;

    //Setters and Getters

}

我的 xhtml 页面的一部分:

<p:dataTable value="#{myBean.details}"
    var="dashboard"
    binding="#{myBean.dataTable}"
    id="dashboardTable" paginator="true" rows="10"
    paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink}"
    rowsPerPageTemplate="10"
    filteredValue="#{myBean.filteredDetails}"
    widgetVar="viewdashboardtable" paginatorPosition="bottom">

        <f:facet name="header">
            <h:outputText value="Dashboard Details"></h:outputText>
        </f:facet>

        <p:column id="column1" filterBy="customerNumber"
            filterMatchMode="contains">
            <f:facet name="header">
                <h:outputText value="customerNumber"></h:outputText>
            </f:facet>
            <h:commandLink value="#{dashboard.customerNumber}"
                action="editdetails">
                <f:setPropertyActionListener value="#{dashboard}"
                    target="#{myBean.Entity}" />
            </h:commandLink>

        </p:column>

        .......
        .......

这里每页只显示两行。该页面按排序顺序显示客户编号 1、2、3 和 4 的客户详细信息。

-------------------------------------------------------
customerNumber           Name           Age
-------------------------------------------------------
    1                   Dheepan         23
    2                   Sasi            23
    3                   Pushparaj       24
    4                   Prabha          24

当我过滤客户编号为 3 的表格时,我只得到如下所示的一行。

-------------------------------------------------------
customerNumber           Name           Age
-------------------------------------------------------
    3                   Pushparaj       24

如果我现在点击客户编号进行编辑,我得到的客户详细信息是 1 而不是 3。问题是在过滤行索引 1 的详细信息后,有客户编号 1 的客户详细信息。有人可以帮忙吗我来解决这个问题?

更新:rowExpansion + Filter 也会出现同样的问题。

【问题讨论】:

    标签: jsf-2 primefaces jsf-1.2 jsf-2.2


    【解决方案1】:

    这是 PF 4.0 中的一个已知问题。它已在 Elite 版本中修复,但实时滚动仍然存在问题。 PrimeFaces 5.0 昨天刚刚作为社区(免费使用)版本发布,AFAIK 该版本包含此行为的修复程序。

    【讨论】:

    • 我在将我的应用程序迁移到 5.0.0 后对其进行了测试。但同样的问题发生了:(
    • 这个问题还存在吗?我是primefaces的新手。我刚刚遇到了类似的情况。
    猜你喜欢
    • 1970-01-01
    • 2012-09-16
    • 1970-01-01
    • 1970-01-01
    • 2014-03-01
    • 1970-01-01
    • 2023-03-22
    • 1970-01-01
    • 2013-08-01
    相关资源
    最近更新 更多