되는 I가 roweditor를 사용하여 데이터 테이블 I가있다. 모든 것은 정상적으로 작동하지만 편집을 위해 연필 단추가있는 열에 더 많은 버튼을 추가해야합니다. 그 "기타"버튼은 항상 연필 아래에 있습니다. <p:panelgrid columns="3"...
을 시도했지만 그 행을 편집 할 수 없었습니다. 문제는 행 편집 (ui-icon-check
및 ui-icon-close
)과 함께 제공되는 다른 두 개의 버튼에 있다고 가정합니다. 아무도 내게 아이디어를 줄 수 있습니까? 여기 내 데이터 테이블입니다 :Primefaces roweditor
<p:dataTable id="sifarnikTable" rowIndexVar="rowIndex"
value="#{attrsBean.listOfDataBeans}" editable="true"
selectionMode="multiple" selection="#{attrsBean.selektovani}"
widgetVar="datatableWidget" var="row" rowKey="#{row.primaryKey}"
paginator="true" paginatorPosition="bottom"
paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink}"
currentPageReportTemplate="{startRecord} - {endRecord}/{totalRecords}"
emptyMessage="#{messages['datatable.emptymessage']}" rows="15"
sortMode="multiple" paginatorAlwaysVisible="false"
filteredValue="#{attrsBean.filteredDatatableList}">
<f:facet name="header">
#{resources['db_parametri.title']}
</f:facet>
<p:ajax event="rowSelect" />
<p:ajax event="rowUnselect" />
<p:ajax event="rowEdit" listener="#{attrsBean.onEdit}"
update=":aswdatatable:form:messages, :aswdatatable:form:sifarnikTable, :aswdatatable:form:noviBtn" />
<p:ajax event="rowEditCancel" listener="#{attrsBean.onCancel}"
update=":aswdatatable:form:messages" />
<p:columns id="columns" var="column" value="#{attrsBean.columns}"
style="#{column.css}" width="#{column.width}"
sortBy="#{row[column.property]}"
filterStyle="#{attrsBean.columnCSS}"
filterBy="#{attrsBean.showFilter==false ? null : row[column.property]}">
<f:facet name="header">
<h:outputText value="#{column.header}" />
</f:facet>
<p:cellEditor>
<f:facet name="output">
<h:outputText value="#{row[column.property]}" />
</f:facet>
<f:facet name="input">
<p:inputText value="#{row[column.property]}" style="width:96%"></p:inputText>
</f:facet>
</p:cellEditor>
</p:columns>
<p:column style="width:6px" exportable="false" >
<p:rowEditor />
<div
onclick="datatableWidget.unselectAllRows();datatableWidget.selectRow(#{rowIndex}, false);">
<h:panelGroup layout="block">
<p:cellEditor>
<f:facet name="output">
<p:commandLink id="deleteBtn"
onclick="datatableWidget.unselectAllRows();datatableWidget.selectRow(#{rowIndex}, false);brisanjeWidget.show()"
process="@this"
update=":aswdatatable:form:brisanjeDisplay, :aswdatatable:form:sifarnikTable"
styleClass="ui-icon ui-icon-trash">
<f:setPropertyActionListener
target="#{attrsBean.modelForDelete}" value="#{row}" />
</p:commandLink>
</f:facet>
<f:facet name="input">
<h:outputText value="" />
</f:facet>
</p:cellEditor>
</h:panelGroup>
</div>
</p:column>
</p:dataTable>
작동하지 않습니다. 나를 위해. 내 데이터 테이블에는''이 있고 그 뒤에'p : column'이 있습니다. 지금은 ther는 삭제 버튼 일뿐입니다. –
@miroslav - 처음에는 코드를 게시하지 않으므로 경험에 따라 답변했습니다. 여전히,'width = "# {column.width}"'(여기서 너는 고정 너비를 설정하고)'style = "width : 6px"', 다른 결과를 기대할 수는 없겠지요. – kolossus
어쨌든 도와 줘서 고마워요. 나는 다른 스타일의 솔루션을 사용하기로 결정했습니다. 그리고 이것은 더 이상 문제가 아닙니다. –