Fonction filter dans rich:datatable
Bonjour,
j'ai crée en succès ma datatable et je veux l'ajouter la fonction filter.
Mon problème c'est le filtrage ne s’exécute que si je reactualise ma page de nouveau pour que mon tableau sera filtré ce qui n'est pas évident.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
|
<rich:dataTable value="#{data.dataList}" var="dataItem"
rowClasses="row1, row2" id="taskList" rows="4"
columnClasses="50,100,100,100"
onRowMouseOver="this.style.backgroundColor='#B5F3FB'"
onRowMouseOut="this.style.backgroundColor='#{a4jSkin.rowBackgroundColor}'"
width="350">
<f:facet name="header">
<rich:columnGroup>
<rich:column colspan="4">
<h:outputText value="Trouble Tickets opened" />
</rich:column>
<rich:column breakBefore="true">
<h:outputText value="Ticket Id" />
</rich:column>
<rich:column>
<h:outputText value="Status" />
</rich:column>
<rich:column>
<h:outputText value="Actor" />
</rich:column>
<rich:column>
<h:outputText value="Description" />
</rich:column>
</rich:columnGroup>
</f:facet>
<rich:column filterBy="#{dataItem.taskInstanceId}" filterEvent="onkeyup" filterValue="#{data.taskInstance}">
<f:facet name="header">
<h:outputText value=" "
title="Hack due to bug. Shuold be remoevd till release"></h:outputText>
</f:facet>
<h:outputText value="#{dataItem.taskInstanceId}" />
</rich:column >
<rich:column filterBy="#{dataItem.taskNode}" filterEvent="onkeyup" filterValue="#{data.taskNod}">
<h:outputText value="#{dataItem.taskNode}" />
</rich:column>
<rich:column>
<h:commandLink value="#{dataItem.actorId}" action="#{data.select}">
<f:setPropertyActionListener value="#{dataItem.actorId}"
target="#{data.host}" />
</h:commandLink>
</rich:column>
<rich:column>
<h:outputText value="#{dataItem.description}" />
</rich:column>
</rich:dataTable>
<rich:datascroller align="left" for="taskList" maxPages="20" />
<a4j:commandButton action="#{data.resetFilter}" value="Reset Current Filtering" reRender="simpletable" ajaxSingle="true" limitToList="true"/> |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
private String taskInstance;
private String taskNod;
public String resetFilter() {
settaskInstance("");
settaskNod("");
}
public String gettaskInstance()
{
return taskInstance;
}
public void settaskInstance(String taskInstance)
{
this.taskInstance=taskInstance;
}
public String gettaskNod()
{
return taskNod;
}
public void settaskNod(String taskNod)
{
this.taskNod=taskNod;
} |
mon buttons reset filter ne fonctionne pas aussi:oops:.
est ce qu'il y a une autre methode ou me manque une chose??
merci d'avance.