我想创建父子网格。我可以按预期获得父网格,但Datasource方法不会调用子网格。
任何人都可以帮我找到解决办法吗?
这是我的代码:
<div class="panel" style="float:left; width:87%;margin-left:12px">
@(Html.Kendo().Grid<BuildingAssetEntities.Models.AssetDisplay>()
.Name("ManageRecordgrid")
.Columns(columns =>
{
columns.Bound(c => c.BuildingName).Title("Building Name").Width(90);
columns.Bound(p => p.BuildingNo).Title("Building Number").Width(95);
columns.Bound(p => p.assetID).Title("QR").Width(50);
})
.ClientRowTemplate(
"<tr>" +
"<td width='90px'>#:checkNull(BuildingName)#</td>" +
"<td width='95px'>#:checkNull(BuildingNo)#</td>" +
"<td width='50px'>#:checkNull(assetID)#</td>" +
"</tr>")
.Pageable(Pageable => Pageable.Numeric(false)
.PageSizes(true))
.Sortable()
.Scrollable()
.Filterable()
.DataSource(dataSource => dataSource
.Ajax()
.Read(read => read.Action("GetManageRecordList", "Record"))
.PageSize(20)
.ServerOperation(false))
.ClientDetailTemplateId("template1")
)
<script id="template1" type="text/kendo-tmpl">
@(Html.Kendo().Grid<BuildingAssetEntities.Models.AssetDisplay>()
.Name("grid_#=assetId#")
.Columns(columns =>
{
columns.Bound(c => c.BuildingName).Title("Building Name").Width(90);
columns.Bound(p => p.BuildingNo).Title("Building Number").Width(95);
})
.DataSource(dataSource => dataSource
.Ajax()
.Read(read => read.Action("GetManageRecordSubList", "Record",new {assetId = "#=assetId#"}))
.ServerOperation(false))
.ToClientTemplate()
)
</script>
</div>
我不知道,问题是什么。我只是得到父网格,而不是子网格 请给我你的建议。
答案 0 :(得分:0)
我得到了这个问题的解决方案。我刚刚更改了我的父网格,如下所示。它按预期工作。
<div class="panel" style="float:left; width:87%;margin-left:12px">
@(Html.Kendo().Grid<BuildingAssetEntities.Models.AssetDisplay>()
.Name("ManageRecordgrid")
.Columns(columns =>
{
columns.Bound(c => c.BuildingName).Title("BuildingName").Width(90);
columns.Bound(c => c.BuildingNo).Title("BuildingNo").Width(95);
})
.Pageable(Pageable => Pageable.Numeric(false)
.PageSizes(true))
.Sortable()
.Scrollable()
.Filterable()
.DataSource(dataSource => dataSource
.Ajax()
.Read(read => read.Action("GetManageRecordList", "Record"))
.PageSize(20)
.ServerOperation(false))
.ClientDetailTemplateId("template1")
)
<script id="template1" type="text/kendo-tmpl">
@(Html.Kendo().Grid<BuildingAssetEntities.Models.AssetDisplay>()
.Name("grid_#=assetId#")
.Columns(columns =>
{
columns.Bound(c => c.BuildingName).Title("Building Name").Width(90);
columns.Bound(p => p.BuildingNo).Title("Building Number").Width(95);
})
.DataSource(dataSource => dataSource
.Ajax()
.Read(read => read.Action("GetManageRecordSubList", "Record",new {assetId = "#=assetId#"}))
.ServerOperation(false))
.ToClientTemplate()
)
</script>
</div>
它不期望父网格中的客户端模板。