#java #jsf-2 #primefaces
#java #jsf-2 #primefaces
Вопрос:
Это может показаться глупым вопросом, но я перепробовал все: с атрибутом стиля (display: inline), с атрибутом styleClass, но ничего. Я хочу, чтобы этот код отображался в той же строке / строке:
<p:panel rendered="#{not empty enastrSearch.recordsList}">
<p:dataTable id="tableData" var="record" value="#{enastrSearch.recordsList}" style="border: 0px" >
<p:column>
<p:dataGrid var="column" value="#{record.renderColumnList}" columns="4" style="display: inline">
<p:column>
#{column.columnValue}
</p:column>
</p:dataGrid>
<h:selectOneMenu value="#{options.selectedBank}" style="display: inline" >
<f:selectItems value="#{banks.currentBanks}" />
</h:selectOneMenu>
</p:column>
</p:dataTable>
</p:panel>
Спасибо!
Ответ №1:
Либо добавьте следующее в свой CSS:
#tableData .ui-datagrid {
float: left;
}
Или, если это не приведет к достижению желаемого макета (элементы будут сворачиваться вместе без пробелов, вам нужно будет самостоятельно манипулировать пробелами внутри содержимого столбца datagrid), а затем поместить их в a <h:panelGrid columns="2">
вместо:
<h:panelGrid columns="2">
<p:dataGrid ... />
<h:selectOneMenu ... />
</h:panelGrid>
Комментарии:
1. Как я мог бы поместить строку заголовка с именем каждого столбца? Если я помещу его в DataGrid, имя столбца будет отображаться для каждой строки, а я этого не хочу; если я помещу его над таблицей данных, имена не будут отформатированы так, как отображаются значения столбцов.