How to put sortBy and filterMethod work together in dataTabl
hwoarang Feb 11, 2009 5:41 PMHi there!
I was using r:dataTable with sortBy attribute and working fine.
After inserting filterMethod I got some problems because when I click on textField to filter the column, the event to sort get fired and I can't type noghing.
The demo site demonstrate these two functions together only using r:extendedDataTable, so I'm not sure if is possible to use r:dataTable.
Someone can cast a light here, please?
Thank you in advance!
I'm using:
Richfaces 3.2.2
JSF 1.2
My code:
<r:dataTable value="#{ManterPessoa.lista}" var="item" sortMode="single" id="table" rows="10" width="680" style="heigth: 720px;" align="center"> <f:facet name="header"> <r:columnGroup> <r:column colspan="3"> <h:outputText value="Registros encontrados" /> </r:column> <r:column breakBefore="true"> <h:outputText value="" /> </r:column> <r:column> <h:outputText value="Matricula" /> </r:column> <r:column> <h:outputText value="Nome" /> </r:column> </r:columnGroup> </f:facet> <r:column width="10%" style="text-align:center;"> <f:facet name="header"> <h:outputText value="" /> </f:facet> <a4j:commandLink reRender="#{paramReRender}" oncomplete="Richfaces.hideModalPanel('modalPessoas');" style="text-decoration: none; border: none"> <h:graphicImage value="/imagens/selecionar.png" style="text-decoration: none; border: none" title="selecionar registro" /> </a4j:commandLink> </r:column> <r:column sortBy="#{item.matricula}" filterMethod="#{ManterPessoa.filterPessoaMatricula}" width="20%" style="text-align:center;"> <f:facet name="header"> <h:inputText value="#{ManterPessoa.filterValueMatricula}" id="inputMatricula"> <a4j:support event="onkeyup" reRender="table , ds" ignoreDupResponses="true" requestDelay="700" oncomplete="setCaretToEnd(event);" /> </h:inputText> </f:facet> <h:outputText value="#{item.matricula}" /> </r:column> <r:column sortBy="#{item.nome}" width="70%" filterMethod="#{ManterPessoa.filterPessoaNome}"> <f:facet name="header"> <h:inputText value="#{ManterPessoa.filterValueNome}" id="inputNome"> <a4j:support event="onkeyup" reRender="table , ds" ignoreDupResponses="true" requestDelay="700" oncomplete="setCaretToEnd(event);" /> </h:inputText> </f:facet> <h:outputText value="#{item.nome}" /> </r:column> </r:dataTable>