0
我正在用Kendo UI的網格在C#asp.NET應用程序中工作。Kendo Grid - 列/鏈接文本
我有一個網格從模型填充(見下面的代碼)。
在我的網格中,我返回3列,但我只想顯示2.我想返回FileName作爲StreamId列鏈接中的文本。目前,我必須將「查看文檔」作爲鏈接文本進行硬編碼,但我只是想根據文件名創建鏈接文本。
我網格的樣子是這樣的:
@(Html.Kendo().Grid<AnimalDocumentViewModel>()
.Name("AttachmentListGrid")
.HtmlAttributes(new {@class = "grid attachmentList"})
.Columns(columns =>
{
columns.Bound (c => c.StreamId).ClientTemplate ("<a class='active' href='" + Url.Action ("DownloadAttachment" , "Animal") + "?id=#= StreamId #'>"+"View Document"+"</a>").Title ("");
columns.Bound(c => c.FileName).Title(Resources.FileName);
columns.Bound(c => c.DocumentType).Title(Resources.Type);
})
.DataSource(dataSource => dataSource
.Ajax()
.Read(read => read.Action("GetAnimalDocumentsGridResult", "Animal", new {Model.AnimalId}))
//.Events(events => events.Error("error_handlerLogEventsList"))
)
.Navigatable()
.Sortable()
.AutoBind(true)
)
我目前使用jQuery來解決這個問題,但我不喜歡做這種方式
:
<script>
$(document).ajaxSuccess(function() {
$("#AttachmentListGrid table tr td:nth-child(2), #AttachmentListGrid table tr th:nth-child(2)").hide();
$("#AttachmentListGrid table tr td:nth-child(2)").each(function() {
var a = $(this).text();
console.log(a);
$(this).parent().find("td:nth-child(1) a").text(a);
});
});
</script>