0
我正在使用Primefaces 3.4和Groovy。我創建的對象Part
和Attachment
:Primefaces:從嵌套的DataTable中選擇行
class Part {
Attachment selectedAttachment
List<Attachment> attachments = []
AttachmentDataModel getAttachmentModel() {
return new AttachmentDataModel(attachments)
}
}
class Attachment {
String fileName
String fileType
String description
}
我的觀點有嵌套數據表,像這樣:
<p:dataTable value="#{mybean.parts}" var="part" rendered="#{mybean.attachmentsFound}">
<p:column>
<p:dataTable
var="attachment"
selectionMode="single"
value="#{part.attachmentModel}"
selection="#{part.selectedAttachment}"
>
<p:column headerText="File Name">
#{attachment.fileName}
</p:column>
<p:column headerText="File Description" style="width: 200px">
#{attachment.description}
</p:column>
<p:column headerText="File Type" style="width: 20px">
#{attachment.fileType}
</p:column>
</p:dataTable>
</p:column>
</p:dataTable>
我希望能夠選擇每部分一個附件。
問題:只有第一部分的selectedAttachment
被設置爲最後選出的附件!
問題:如何啓用每個零件實例來保存其選定的附件?謝謝你的時間。
注意:如果我調試我的AttachmentDataModel,我會看到getRowData
命中儘可能多的選擇。
我們應該瞭解您的'AttachmentDataModel'類嗎?也許你想指向嵌套dataTable中的'attachments'列表? –
如果我使用「rowKey」方法並將內部DataTable的值更改爲'#{part.attachments}',仍會發生同樣的問題 – Pakman