0
我想創建一個表格,其中包含一列鏈接,每個鏈接將打開它所表示的各個對象的頁面。 例如,該列將顯示發票的編號,這是一個鏈接。當我們點擊其中一個鏈接時,會打開一個頁面,顯示該發票的詳細信息。 我試圖做這樣的: 我創建了一個類GuidLinkPanel.java
,在那裏我把ajaxLink
要做一個可排序的欄中不同鏈接
import org.apache.wicket.AttributeModifier;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.markup.html.AjaxLink;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.panel.Panel;
import org.apache.wicket.model.IModel;
import org.apache.wicket.model.Model;
import org.apache.wicket.request.mapper.parameter.PageParameters;
import nl.riskco.liberobc.client.business.model.InvoiceDomain;
import nl.riskco.liberobc.web.pages.details.DetailsPage;
public class GuidLinkPanel extends Panel {
public GuidLinkPanel(final String id, IModel<InvoiceDomain> invoice)
{
super(id);
add(new AjaxLink<Void>("guid"){
private static final long serialVersionUID = 1L;
@Override
public void onClick(AjaxRequestTarget target) {
PageParameters params = new PageParameters();
params.add("invoiceId", invoice.getObject().getInvoiceGUID());
setResponsePage(DetailsPage.class, params);
}
});
}
}
其標記
<wicket:panel>
<wicket:message key="invoice-header">[invoice-header]</wicket:message>
<a href="#" wicket:id="guid"></a>
</wicket:panel>
現在所在班級的摘錄該表創建,我也想此列可排序,所以我這樣做:
columns.add(new PropertyColumn<InvoiceDomain, String>(new
StringResourceModel("invoice-id-label", this, null), "invoiceGUID",
"invoiceGUID"));
columns.add(new AbstractColumn<InvoiceDomain,String>(new Model<>("Invoice ID"),"invoiceGUID"){
private static final long serialVersionUID = 1L;
@Override
public void populateItem(Item<ICellPopulator<InvoiceDomain>> item, String componentId, IModel<InvoiceDomain> rowmodel)
{
item.add(new GuidLinkPanel(componentId, rowmodel));
}
});
的標記
<wicket:panel>
<div class="panel panel-default">
<div class="panel-body">
<div class="table">
<table wicket:id="invoices-table" class="table table-striped"
</table>
</div>
</div>
</div>
</wicket:panel>
其結果是:
的列被添加,但在每行中的字符串
[GuidLinkPanel [組件ID =細胞]]]
,它是不是一個鏈接。 有沒有人有建議如何做到這一點?
https://cwiki.apache.org/confluence/display/WICKET/Simple+Sortable+DataTable+示例 – soorapadman
我的問題不是讓它們可排序,我的問題是我想查看錶中顯示的發票GUID並作爲一個鏈接,但是我得到[GuidLinkPanel [Component id = cell]]]。 感謝您的幫助。 –