Kendo 客户端模板中的网格未正确填充

Kendo grid in client template not populating correctly

我有一个网格,它使用客户端模板来显示另一个网格。 'master-grid' 指向模板标签:

.ClientDetailTemplateId("template")

并且模板标记包含以下网格:

@(Html.Kendo().Grid<SHFTavling_3.Data.bo_Hall>()
.Name("grid2")
.DataSource(dataSource =>
        {
            dataSource.Ajax().Read(read =>
            {
                read.Action("GetClubArenas", "Club", new { ClubId = "#=ClubId#" });
            });
            dataSource.Ajax().Events(e => e.Error("onError"));
        }
            ).Columns(c =>
            {
                c.Bound(x => x.HallId).HtmlAttributes(new { @class = "arena-id" }).Hidden();
                c.Bound(x => x.HallAlias);
                c.Bound(x => x.HallMinis);
                c.Bound(x => x.HallMeasurement);
                c.Bound(x => x.HallCapacity);
                c.Bound(x => x).Title("Ta bort").ClientTemplate("<span class='k-icon delete-arena k-i-cancel' onClick='deleteArena(this, #=ClubId#)'></span>");

            })
            .Sortable().ToClientTemplate()
)

此时,只有 第一个展开的行 将填充最近展开的行。例如。如果先展开第一行,再展开第三行,第一行会得到第三行的数据,而第三行仍然是空的。

为了解决这个问题,我改变了

.Name("grid2")

.Name("grid2_#=ClubId#")

让模板中的每一个格子都是独一无二的,这样数据才能找到正确的格子。

我现在的问题是没有错误并且无法继续。

提到的控制器在调试模式下没有命中,ajax 甚至没有调用 grid2 来填充网格 - 我不明白为什么。

浏览器控制台没有抛出JS错误,完全没有明显的错误。

截至目前

dataSource.Ajax().Events(e => e.Error("onError"));

数据源的错误处理,它也没有调用它。

原来每个 "ClubId" 都包含空格。在将它发送到视图之前,我只需要 trim ID。

希望以后能解决这个错误。