簡體   English   中英

如何在JSF中使用rich:dataTable顯示特定行

[英]How to display specific row with rich:dataTable in JSF

我在Bean中有一個對象列表,我想將此列表顯示到dataTable中。 每行包含對象的數據。 但是,我不想在我的dataTable中顯示所有對象。

<rich:dataTable id="myTable" iterationStatusVar="iterator" style="width: 100%; height: 100%" value="#{myBean.myList}" var="myObject">
                <rich:column>
                    <f:facet name="header">
                        <h:outputLabel value="#{bundle.name}"/>
                    </f:facet>
                    <h:outputLabel value="#{myObject.name}" rendered = "#{myObject.code == bundle.code}"/>
                </rich:column>
                <rich:column>
                    <f:facet name="header">
                        <h:outputLabel value="#{bundle.type}"/>
                    </f:facet>
                    <h:outputLabel value="#{myObject.type}" 
                        rendered = "#{myObject.code== bundle.code}"/>
                </rich:column>
            </rich:dataTable>

此代碼僅顯示具有myObject.code == bundle.code的對象。 但是,我的數據表也顯示其他行(未通知列)。

請問你能幫幫我嗎?

謝謝。

您的bean可以提供一種返回過濾列表的方法,該列表僅包含所需的對象。 在您的dataTable中顯示該過濾列表。

或者,如果使用當前的EL版本3.0,則可以使用EL表達式來過濾列表。 #{myBean.myList.stream().filter(o->o.code == bundle.code)}"#

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM