更新的outputText基於DataTable中選擇複選框值我需要你在與一個DataTable中選擇複選框總量現場更新的outputText
幫助。 JSF的有下面的代碼:如何通過Ajax
<p:dataTable id="PendingRequests" var="hr" selection="#{hrdirector.selectedRequests}"
value="#{hrdirector.listPendingRequests}" rowKey="#{hr.requestNo}"
filteredValue="#{hrdirector.filteredRequests}" widgetVar="dataTableWidgetVar">
<p:column selectionMode="multiple" style="width:16px;text-align:center"></p:column>
<p:column headerText="Request No.">
<h:outputText value="#{hr.requestNo}"/>
</p:column>
<p:column headerText="Request Amount">
<h:outputText value="#{hr.requestAmount}"/>
</p:column>
</p:dataTable>
<h:outputText id="Sum" value="#{hr.Sum}"/>
的用戶將選擇一些複選框,我需要知道適當的方式,通過AJAX調用一個方法來更新與選擇的請求總數量的outputText。
的方法被稱爲是:
public void ShowTotal() {
try {
String [] tranAmountArr = new String[selectedRequests.size()];
for (int i = 0; i < selectedRequests.size(); i++) {
tranAmountArr[i] = selectedRequests.get(i).getEncashmentAmount();
Sum = Sum + Double.parseDouble(tranAmountArr[i]);
}
System.out.println(Sum);
} catch (Exception e) {
System.err.print(e);
e.printStackTrace();
log.error("Error in ShowTotal()");
}
}
http://stackoverflow.com/q/20456143/1391249 – Tiny
@BalusC是一個非常優雅的解決方案,如果你只需要輸出的總和。如果以後想要做的任何驗證或額外的操作,則必須增加服務器端的聽衆。 – lametaweb