2012-04-12 10 views
0

私はプライムサーフェスをプライムサーブ上に配置できますtabView ..JSFでidが自動的に生成される要素をレンダリングする方法はありますか?

私はそれをフィルタリングしています。グリッドで新しい値が更新されると、フィルタを再レンダリングする必要があります。

フィルタ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

への正しい方法は何ですかコンポーネントのコンテキストでそれを見つけることができませんフィルタをもう一度レンダリングしますか? dataTableIdがdataTableのに与えられたIDですwidget_<dataTableId>.filter();

おかげで、 Shikha

答えて

0

はへonCompleteのJSコールをしてみてください。

+1

より良いアプローチは、 'widgetVar'属性を' p:dataTable'に割り当て、その上に '.filter()'を呼び出すことです。 – Fallup

+0

@Fallup私は同意します。よりきれいで適切なアプローチです。 – mosgjig

+0

にjsf2の "oncomplete"属性がありません。私が間違っているなら、私はPlsを修正します。私はドキュメンテーションでそれを見つけられませんでした。走ってみることも同様です。しかし、私は、属性はそこにないと思います。 –

関連する問題