0

我在 primefaces tabView 上放置了 primefaces'datatable..

我正在使用过滤器。随着网格中的新值更新,我想重新渲染过滤器。

过滤器 id 生成为:tabViewId:ActiveTabIndex:DatatableID:ColumnName_filter。

在输入文本的值更改时,我想重新渲染过滤器。

<p:column width="40">
                    <h:inputText id="vendorInputTxt" value="#{articlePromo.proveedor}"
                        styleClass="inputTextStyle">
                        <f:ajax event="change" render=":categoryTabView:0:promotionDetail_dataTable:vendorColumnHeader_filter"
                            listener="#{promotionDetailManagedBean.onProveedorChange}" />
                    </h:inputText>
                </p:column>

但它给出了错误,包含一个未知的 id ':categoryTabView:0:promotionDetail_dataTable:vendorColumnHeader_filter' - 无法在组件 vendorInputTxt 的上下文中找到它

再次渲染过滤器的正确方法是什么?

谢谢, 希哈

4

1 回答 1

0

尝试一个 js 调用 oncomplete 到:widget_<dataTableId>.filter(); 其中 dataTableId 是给 dataTable 的 id。

于 2012-04-12T13:22:12.937 回答