2012-03-01 15 views
0

PF 3.1.1、JSF 2.0を使用しています。JSF ajaxコールからデータテーブルを更新する

私はselectBooleanCheckBoxの列を持つデータテーブルを持っています。ユーザーが行を選択すると、チェックボックスをオンにし、ユーザーがチェックボックスをオンにすると、行が選択されます。

selectBooleanCheckBoxでajax呼び出しを行っていますが、バッキングBeanのselectionArrayを更新しますが、結果は画面に表示されません。ここ

コードである -

<p:dataTable id="mylist" value="#{myController.selectedLists}" 
             selection="#{myController.myArray}" 
             selectionMode="multiple" 
             var="item" 
             rows="5" 
             rowKey="#{item.id}" 
             sortBy="#{item.name}" 
             sortOrder="ascending" 
             > 
           <p:ajax event="rowSelect" 
             listener="#{myController.onSelectList}" 
             update="mylist"/> 
           <p:column style="width: 20px;" id="gs"> 
            <h:selectBooleanCheckbox id="booId" 
                  value="#{item.booVal}"> 
             <f:ajax execute="@this" 
               listener="#{myController.booValListener}" 
               render="mylist"/> 
             <f:attribute name="item" value="#{item}" /> 
            </h:selectBooleanCheckbox> 
           </p:column> </p:datatable> 

任意の助けを大幅に高く評価されています。

答えて

0

チェックボックス/ラジオボタンの選択方法は機能しませんか?その機能のデモをご覧ください:http://www.primefaces.org/showcase-labs/ui/datatableRowSelectionRadioCheckbox.jsf

問題が発生しました:以前は、ajaxリクエストの後にdatatableを更新する際に問題が発生しました。これらがprimefaces 3.0以降に対処していない限り、データテーブルを直接更新することはできません。そのためには、panelGroupをラップしてpanelGroupを更新する必要があります。例:

<h:panelGroup id="panel"> 
    <p:dataTable id="mylist" value="#{myController.selectedLists}" 
            selection="#{myController.myArray}" 
            selectionMode="multiple" 
            var="item" 
            rows="5" 
            rowKey="#{item.id}" 
            sortBy="#{item.name}" 
            sortOrder="ascending" 
            > 
      <p:ajax event="rowSelect" 
            listener="#{myController.onSelectList}" 
            update="panel"/> 
      ... 
    </p:dataTable> 
</h:panelGroup> 

これを試してみてください。

+0

提案していただきありがとうございます。データテーブルにrowSelectListenerがある場合、チェックボックスの選択は機能しません。それがselectBooleanCheckboxを使用している理由です。 – goodprg

+0

十分です。私は私の答えを編集している、そのショットを与える。 – Andre

+0

もう一度ありがとう。実際に私は、更新属性を持たないJSFのAJaxイベントからデータテーブルを更新しようとしていました。 リスナー= "#{myController.onBooListener}" レンダリング= "@フォーム" /> goodprg

関連する問題