1

セル エディター機能を使用するデータ テーブルがあります。各行にはドロップダウンがあり、ユーザーがそのドロップダウンで別の値を選択したときに、現在の行の別のセルを更新する必要があります。

これが私のコラムです:

<p:column headerText="Period">
    <p:cellEditor>
        <f:facet name="input">
            <p:selectOneMenu value="#{pj_details.periodDates}" id="period" size="1" styleClass="listBoxMedium">
                <p:ajax update="tabs:editProjects:projects" event="change" listener="#{ppBacker.populateProjectDates}" />
                <f:attribute name="period_key" value="#{pj_details.periodDates}" />
                <f:selectItems value="#{ppBacker.periods}" />
            </p:selectOneMenu>  
         </f:facet>
         <f:facet name="output">
                <h:outputText value="#{pj_details.periodDates}" />
         </f:facet>
    </p:cellEditor>
</p:column>

テーブルをcelleditorモードからスローする入力フォームを更新することを除いて、私の更新は機能します。

firebug を使用すると、必要な更新が次のようになっていることがわかります。

tabs:editProjects:projects:1:projStartDate_input

唯一の問題は、この例の番号 1 が行を参照していることです。

では、celleditor モードから抜け出さずに、ドロップダウンと同じ行のセルを更新するにはどうすればよいですか?

4

1 に答える 1

1

同様の問題を確認してください... Jquery Onchangeイベントが発生しない - Primefaces - inputText

データテーブルのrowIndexVarを定義し、rowIndexVarを使用してセルにアクセスします

お役に立てれば

于 2012-04-09T07:15:32.200 に答える