Мне было поручено преобразовать одну из наших старых таблиц, созданную с помощью rich: dataTable, в rich: extendedDataTable. В старых таблицах мы работали с rich: columnGroup, чтобы разделить заголовок на 2 строки. Я знаю, что rich: columnGroup не работает в сочетании с extendedDataTable. Может быть, есть обходной путь для этого или даже альтернатива columnGroup? Большое спасибо
Как это выглядело с rich: dataTable: введите здесь описание изображения
Как это выглядит сейчас (я все еще относительно в начале): введите здесь описание изображения
При необходимости я могу предоставить код, но у меня есть только простой rich: extendedDataTable с несколькими столбцами - каждый столбец находится в этом фасете
<f:facet name="header">
Я надеюсь, что это работает как минимальный пример - это первый столбец, и я хочу, чтобы поле ввода было под текстом (атрибуты вроде var, вероятно, нужно удалить?):
<rich:extendedDataTable
id="#{_idTable}"
value="#{_pagination.data}"
var="_t"
width="100%"
rowClasses="tablerow-odd, tablerow-even">
<c:if test="#{includeDefaultActionColumn}">
<rich:column width="8%">
<f:facet name="header">
<h:outputText
value="#{messages['de.segal.baoss.module.numberrange.entity.NumberRangeName.ImpersonalNumber']}" />
</f:facet>
</rich:column>
</c:if>
<rich:column>
<c:if test="#{!_disableFilter}">
<f:facet name="header">
<b:filterTable reRender="#{_idTable}Header1" key="accountNumber"
pagination="#{_pagination}" />
</f:facet>
</c:if>
<div class="row">
<s:fragment rendered="#{reverseActionEnabled and _t.draft eq false and _t.bookingType eq 'IMPERSONAL'}">
<div class="col-4" style="padding-left:1px;padding-right:1px;">
<b:confirmationButton id="#{_idTable}generateReverseTransaction"
value="#{messages['ui.common.yes']}"
buttonText="#{messages['invoicing.booking.generic.reversePosting']}"
ajaxSingle="true"
messageText="#{e:messageForHtml('invoicing.booking.generic.reversePosting.confirmation')}"
headerText="#{messages['ui.common.confirm']}"
styleClass="col-12 w-icon undo" reRender="#{_idTable}Header1"
action="#{invoicing.genericBookingManager.generateReverseTransaction(_t, _pagination)}" >
<span class="tooltip">#{messages['invoicing.booking.generic.reversePosting.tooltip']}</span>
</b:confirmationButton>
</div>
</s:fragment>
<s:fragment rendered="#{establishActionEnabled and _t.draft}">
<div class="col-4" style="padding-left:1px;padding-right:1px;">
<b:confirmationButton id="#{_idTable}establishAccountingTransaction"
value="#{messages['ui.common.yes']}"
immediate="true"
messageText="#{e:messageForHtml('invoicing.booking.generic.establishAccountingTransaction.confirmation')}"
headerText="#{messages['ui.common.confirm']}"
styleClass="col-12 w-icon lock_open" reRender="#{_idTable}Header1"
action="#{invoicing.accountingTransactionOverviewManager.establishAccountingTransaction(_t)}">
<span class="tooltip">#{messages['invoicing.booking.generic.establishAccountingTransaction.tooltip']}</span>
</b:confirmationButton>
</div>
</s:fragment>
<s:fragment rendered="#{deleteActionEnabled and _t.draft}">
<div class="col-4" style="padding-left:1px;padding-right:1px;">
<b:confirmationButton id="#{_idTable}btnDeleteItem"
value="#{not empty _t.openItemTransferLog or not empty _t.accountingExportDate?messages['de.segal.baoss.module.invoicing.common.deleteAnyway']:messages['ui.common.delete']}" buttonText=""
cancelText="#{messages['ui.common.cancel']}"
ajaxSingle="true"
messageText="#{not empty _t.openItemTransferLog or not empty _t.accountingExportDate?e:messageForHtml('de.segal.baoss.module.invoicing.service.message.hintTransactionAlreadyExported'):messages['de.segal.baoss.platform.groupware.mail.delete']}"
headerText="#{messages['ui.common.confirm']}"
styleClass="col-12 w-icon w-icon-red cancel"
reRender="#{_idTable}Header1,idReceiptTable,massWorkflowPanel"
oncomplete="#{deleteActionOncomplete}"
action="#{_bean.deleteTransaction(_t)}">
<span class="tooltip">#{messages['ui.common.delete']}</span>
</b:confirmationButton>
</div>
</s:fragment>
</div>
</rich:column>
</rich:extendedDataTable>
Мне очень жаль насчет второй большой части, я попытался сократить ее, но я не знаю, насколько фрагменты «важны» ... разве это не просто текстовое поле? .. Может, вы тоже можете мне немного рассказать об этом ? Большое спасибо.