Я хочу отредактировать данные в ячейке dataTable. Я провел некоторые исследования, но не смог найти простых лиц 3.4.1. Что я хочу сделать, это сложить значения столбцов A и ColumnnB и записать столбец C . Я думаю, что я должен использовать rowEdit вместо cellEdit для простых лиц 3.4.1. Есть ли у вас какие-либо идеи?
Моя страница jsf:
<h:form id="form">
<p:dataTable id="dataTableChurn"
var="products" scrollable="true"
value="#{invoicePageController.products}"
widgetVar="tblInvoiceList"
rowKey="#{products.productId}"
editable="true" editMode="cell"
emptyMessage="#{invoicePageController.invoiceLazyDataModel.getEmptyListMessage()}"
paginator="true" rows="20" paginatorPosition="bottom"
paginatorAlwaysVisible="false"
styleClass="center-all"
selectionMode="single"
paginatorTemplate="#{invoicePageController.getPagingTemplate()}"
currentPageReportTemplate="#{invoicePageController.getPagingReportTemplate()}"
selection="#{invoicePageController.selectedProducts}">
<p:ajax event="rowEditSelect" listener="#{invoicePageController.onRowSelect}" update=":form:msgs"/>
<p:ajax event="rowEditCancel" listener="#{invoicePageController.onRowCancel}" update=":form:msgs" />
<p:column selectionMode="multiple" width="20" exportable="false" styleClass="selectionCheckBox" />
<p:column width="70" headerText="Ürün">
<h:outputText value="#{products.productName}" />
</p:column>
<p:column width="30" headerText="Aylık Kredi">
<h:inputText style="margin-top:9px; width:110px" id="counter2" value="#{invoicePageController.creditValue}">
</h:inputText>
</p:column>
<p:column width="30" headerText="Dönem(ay)">
<h:inputText style="margin-top:9px; width:110px" id="counter" value="#{invoicePageController.monthOfCredit}" >
</h:inputText>
</p:column>
<p:column width="75" headerText="Toplam Kredi Tutarı">
<h:inputText id="out" value="#{invoicePageController.totalCreditValue}" style="width:110px" />
</p:column>
<p:column width="30">
<p:commandButton style="margin-left:20px; width:72px; height:25px; margin-top:3px"
value="Onayla"
process="@form"
styleClass="btn btn-primary"
listener="#{invoicePageController.remove(item)}"
ajax="false" />
</p:column>
</p:dataTable>
</h:form>
Мой бин привязан к странице jsf как это:
private Double creditValue;
private Double monthOfCredit;
private Double totalCreditValue;
public void onRowSelect(RowEditEvent event) {
FacesMessage msg = new FacesMessage("Document Edited", event.getObject().toString());
FacesContext.getCurrentInstance().addMessage(null, msg);
}
public void onRowCancel(RowEditEvent event) {
FacesMessage msg = new FacesMessage("Edit Cancelled", event.getObject().toString());
FacesContext.getCurrentInstance().addMessage(null, msg);
}
Это последний