如何呈现一个在JSF中自动生成id的元素?

时间:2012-04-12 07:47:53

标签: jsf-2 primefaces

我将primefaces'datatable置于primefaces tabView ..

我正在使用过滤功能。在网格中更新新值时,我想重新渲染过滤器。

过滤器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的上下文中找到它

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

谢谢, Shikha

1 个答案:

答案 0 :(得分:0)

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