DataModel не устанавливается с новым значением при сортировке по кнопкам New & Save и не запускается обработчик RowEditEvent - PullRequest
0 голосов
/ 26 февраля 2020

Я использую редактируемые данные простых чисел и предоставляю кнопки стиля проверки как скрытые. Я не использую кнопку проверки редактирования простых лиц. Я удалил его и добавил только кнопки NEW и SAVE .

Когда я нажимаю кнопку NEW , новая строка добавляется в datatable, но модель не установлена, потому что обработчик событий строки не сработал, тогда как я мог сделать это до того, как убрать кнопку редактирования.

В результате я хочу нажать кнопку NEW и добавлю новые значения в таблицу последней установленной модели, прежде чем нажать кнопку SAVE как вызов строки обработчик событий

.ui-icon-check {
    visibility: hidden;
}

Я хочу вызывать эту функцию по нажатию новой кнопки

public void onRowCancel(RowEditEvent event) {
    FacesMessage msg = new FacesMessage("Edit Cancelled", String.valueOf(((EmdValidation) event.getObject()).getAirlineNumericcode()));
    FacesContext.getCurrentInstance().addMessage(null, msg);
}

DataTable выглядит следующим образом:

<p:dataTable id="validationTable" var="validation" rows="10"
             widgetVar="validationWidget"
             value="#{view.validationTable}" editable="true">

CommandButton:

<p:commandButton value="NEW" action="#{view.onAddNew()}" update=":form:validationTable"
                 onclick="PF('validationWidget').paginator.setPage(PF('validationWidget').paginator.cfg.pageCount - 1)"
                 oncomplete="jQuery('.ui-datatable-data tr').last.find('span.ui-icon-pencil').each(function(){jQuery(this).click()})">

сохранить действие для новой модели значения

<p:column headerText="Save">
    <p:commandButton icon="fa fa-save" update="validationTable"  actionListener="#{view.saveAction(validation)}"/>
</p:column>

<p:column headerText="Edit" style="width:30px">
    <p:rowEditor  />
</p:column>
...