p: Datatable Filter: Komponente mit leerem Wert kann nicht validiert werden

Gibt es eine Möglichkeit, eine p: datatable-Spalte zu filtern, indem Sie auf den Text darin klicken und diesen Text zum Filter machen?

Mit anderen Worten, wenn ich auf eine Sitzungs-ID klicke, möchte ich, dass die Datentabelle diese Spalte nach der angeklickten ID filtert, als hätte ich sie manuell in den Filter oben eingegeben?

Ich benutze Primefaces 6

AKTUALISIERE

Dies ist meine vollständige Datatable mit der vorgeschlagenen Lösung:

<p:dataTable id="tablealltx" var="transaction" value="#{pastTxModel.txList}" paginator="true" rows="20" sortBy="#{transaction.createdDate}" sortOrder="descending" resizableColumns="true">             

    <p:column filterBy="#{transaction.session}" filterMatchMode="contains">

        <f:facet name="filter">
            <p:inputText id="myFilter" value="#{transactionXmlController.currentFilter}" onchange="PF('alltxform').filter()" />
        </f:facet>

        <p:outputLabel value="#{transaction.session}" ondblclick="document.getElementById('alltxform:tablealltx:myFilter').value = this.innerText;PF('tablealltx').filter()" >        
    </p:column>
</p:dataTable>

Wenn ich auf die Sitzung doppelklicke, wird der Wert in das Filtertextfeld eingegeben, aber die Filterung selbst funktioniert nicht. Nichts passiert

Ich verwende TomEE 7.0.1

Lösun Kopieren Einfügen aus Jasper:

Die Datentabelle in Ihrer Frage enthält kein WidgetVar, das auf tablealltx festgelegt ist, sodass PF ('tablealltx'). Filter () fehlschlägt. Sie können es testen, indem Sie PF ('tablealltx') in die JavaScript-Konsole Ihres Browsers eingeben.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage