在RichFaces的服务器端的DataTable排序 [英] Server-side DataTable Sorting in RichFaces
本文介绍了在RichFaces的服务器端的DataTable排序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个可变的列数和一个数据卷轴的数据表。我怎样才能使服务器端的排序?我preFER它通过单击列标题中的用户被解雇。
<丰富:datascroller为=instanceList的ActionListener =#{pageDataModel.pageChange}/>
<丰富:dataTable中的id =instanceList行=10值=#{pageDataModel}
VAR =fieldValuesrowKeyVar =rowKey>
<丰富:列值=#{pageDataModel.columnNames}VAR =栏指数=IDX>
< F:面名=标头>
< H:的outputText值=#{}栏/>
< / F:面>
< H:的outputText值=#{classFieldValues [IDX]}/>
< /富:列>
< /富:dataTable的>
我已经对这个bean的方法来执行排序。
公共无效排序(INT列)
解决方案
我最后做手工。我加入了支持标签的标题文字标签,就像这样。
< H:的outputText值=#{}栏>
< A4J:支持事件=的onclick行动=#{pageDataModel.sort(IDX)}
eventsQueue =instancesQueue
重新呈现=instanceList,instanceListScroller/>
< / H:的outputText>
要获得上升/下降箭头,我添加了一个CSS类。
< H:的outputText值=#{}栏的styleClass =#{pageDataModel.getOrderClass(IDX)}>
< A4J:支持事件=的onclick行动=#{pageDataModel.sort(IDX)}
eventsQueue =instancesQueue
重新呈现=instanceList,instanceListScroller/>
< / H:的outputText>
I have a data table with a variable number of columns and a data scroller. How can I enable server side sorting? I prefer that it be fired by the user clicking the column header.
<rich:datascroller for="instanceList" actionListener="#{pageDataModel.pageChange}"/>
<rich:dataTable id="instanceList" rows="10" value="#{pageDataModel}"
var="fieldValues" rowKeyVar="rowKey">
<rich:columns value="#{pageDataModel.columnNames}" var="column" index="idx">
<f:facet name="header">
<h:outputText value="#{column}"/>
</f:facet>
<h:outputText value="#{classFieldValues[idx]}" />
</rich:columns>
</rich:dataTable>
I already have a method on the bean for executing the sort.
public void sort(int column)
解决方案
I ended up doing it manually. I adding a support tag to the header text tag, like so.
<h:outputText value="#{column}">
<a4j:support event="onclick" action="#{pageDataModel.sort(idx)}"
eventsQueue="instancesQueue"
reRender="instanceList,instanceListScroller"/>
</h:outputText>
To get the ascending/descending arrows, I added a css class.
<h:outputText value="#{column}" styleClass="#{pageDataModel.getOrderClass(idx)}" >
<a4j:support event="onclick" action="#{pageDataModel.sort(idx)}"
eventsQueue="instancesQueue"
reRender="instanceList,instanceListScroller"/>
</h:outputText>
这篇关于在RichFaces的服务器端的DataTable排序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文