JSFでデータテーブルを設定しようとしていますが、そのテーブルの行合計は、その行のすべてのボックスのonChangeの合計を合計します。行は次のようになります。onChangeのJSFアクション
<tr id="input_row_1">
<td id="mondayInput1">
<h:inputText id="monday1" size="4" value="#{timesheet.monday1}" required="false" />
<!-- <input name="monday1" class="smallInput" type="number" size="2" maxlength="4" min="0"/> -->
</td>
<td id="tuesdayInput1">
<h:inputText id="tuesday1" size="4" value="#{timesheet.tuesday1}" required="false" />
<!--<input name="tuesday1" class="smallInput" type="number" size="2" maxlength="4" min="0"/> -->
</td>
<td id="wednesdayInput1">
<h:inputText id="wednesday1" size="4" value="#{timesheet.wednesday1}" required="false" />
<!--<input name="wednesday1" class="smallInput" type="number" size="2" maxlength="4" min="0"/> -->
</td>
<td id="thursdayInput1">
<h:inputText id="thursday1" size="4" value="#{timesheet.thursday1}" required="false" />
<!--<input name="thursday1" class="smallInput" type="number" size="2" maxlength="4" min="0"/> -->
</td>
<td id="fridayInput1">
<h:inputText id="friday1" size="4" value="#{timesheet.friday1}" required="false" />
<!--<input name="friday1" class="smallInput" type="number" size="2" maxlength="4" min="0"/> -->
</td>
<td id="saturdayInput1">
<h:inputText id="saturday1" size="4" value="#{timesheet.saturday1}" required="false" />
<!--<input name="saturday1" class="smallInput" type="number" size="2" maxlength="4" min="0"/> -->
</td>
<td id="sundayInput1">
<h:inputText id="sunday1" size="4" value="#{timesheet.sunday1}" required="false" />
<!--<input name="sunday1" class="smallInput" type="number" size="2" maxlength="4" min="0"/> -->
</td>
<td>
<h:inputText id="total1" size="4" value="#{timesheet.total1}" required="false" />
<!-- <input name="total1" id="total1" type="text" size="5" readonly="readonly" /> -->
</td>
ので、私は最初の日のエントリにonChange="#{timesheet.setTotal1}"
を追加しようとしましたが、onChangeイベントはjavascriptの、ではないのJava/JSFコードを呼び出します。誰かが合計を更新する手助けができますか?
はEDIT: 私はBalusCの答えを受け入れたが、必要に応じても、それは確かにそう
<h:inputText id="friday1" size="4" value="#{timesheet.friday1}" maxlength="4" required="false" >
<f:ajax event="change" render="total1" listener="#{timesheet.updateTotal1}" />
</h:inputText>
と
私はこれをしなかった、と今取得しています: "javax.servlet.ServletException:プロパティ 'updateTotal1' タイプcom.timesheet.Timesheetに見つからない" updateTotal1が財産であるかのようにメソッド/アクションではなく –
''ではどういう意味ですか?どうやら、 'f:' taglibのXML名前空間はまったく宣言されていません。 ''タグ全体は実際には "プレーンテキスト"として扱われます(読み込み:ELはすべて値式として扱われます)。 –
BalusC
しかし、それは宣言されている、私はちょうどすべてのHTMLコード –