PrimeFaces可扩展和可选择的行

时间:2012-11-10 20:54:37

标签: jsf-2 primefaces

我有一个PrimeFaces DataTable,其中一列名为'name',行扩展名为'description'。

是否可以通过单击来选择这些行,但是在扩展时无法触发选择事件?

修改

<h:form id="customerCategoryListForm">
    <p:dataTable var="customerCategory" value="#{admin.customerCategories}" id="customerCategoryList" 
        paginator="true" rows="10" 
        rowKey="#{customerCategory.id}" selectionMode="single" selection="#{admin.selectedCustomerCategory}"
        paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
        rowsPerPageTemplate="10,25,50"
        emptyMessage="Nincs adat!">
        <p:ajax event="rowSelect" update=":customerCategoryDialogForm:customerCategoryDisplay" oncomplete="customerCategoryDialog.show()" />  

        <f:facet name="header">  
            Categories
        </f:facet>

        <p:column width="10">
            <p:rowToggler />
        </p:column>

        <p:column headerText="Category name" sortBy="#{customerCategory.name}" width="740">
            <h:outputText value="#{customerCategory.name}" />
        </p:column>

        <p:rowExpansion>
            <h:outputText value="#{customerCategory.description}" />
        </p:rowExpansion>

        <f:facet name="footer">
            <p:commandButton value="Új hozzáadása" />
        </f:facet>

    </p:dataTable> 
</h:form>

1 个答案:

答案 0 :(得分:0)

不是让整个列打开对话框,而是可以将列中的outputText更新为commandLink,它仍将使用AJAX来调用辅助bean:

<p:commandLink value="#{customerCategory.description}" actionListener="#{customerCategory.fooMethod(customerCategory)}" update=":customerCategoryDialogForm" oncomplete="PF('customerCategoryDialog').show();"/>