如何通过javascript过滤icefaces dataTable?

时间:2019-04-25 15:18:59

标签: javascript icefaces

a的带有过滤器(icefaces生成来写入过滤器值)

     <ace:dataTable id="info" value="#{mybean.data}" var="item" >
        <ace:column id="customerID" headerText="ID" filterBy="#{item.customerID}" filterMatchMode="contains">
              <ice:outputText styleClass="center" value="#{item.customerID}"/>
        </ace:column>
     ...
     </ace:dataTable>

我有一个javascript函数,它为过滤写一个值,但它不会触发过滤功能,也就是说,仅显示与过滤值匹配的行。仅当我在框中写一些内容时,它才起作用,在那里我注意到icefaces与服务器进行了ajax通信。我猜想这是由上的onchange事件触发的,所以我尝试在javascript函数中生成它。

        function triggerFiltering(customerID) {   
            document.getElementById('form:info:customerID_filter').value = customerID;
            if ("createEvent" in document) {
                var evt = document.createEvent("HTMLEvents");
                evt.initEvent("change", false, true);
                document.getElementById('form:info:customerID_filter').dispatchEvent(evt);
            }
            else
                document.getElementById('form:info:customerID_filter').fireEvent("onchange");
        }

我可以看到它生成了一个ajax通信,但该表仍未过滤其行。如何通过javascript过滤?我在mojarra jsf 2.1.18上使用icefaces 3.3.0

0 个答案:

没有答案