【发布时间】:2012-11-12 19:08:08
【问题描述】:
我正在使用 KendoUI 层次网格来显示父/子数据。
我能够正确填写所有内容并填充网格,但在某些情况下父数据没有相应的子记录。
发生这种情况时,子网格标题仍会显示,但没有相应的记录。我想完全隐藏网格,或者至少不显示标题(这将呈现几乎相同的东西)。
有什么想法吗?
【问题讨论】:
标签: css asp.net-mvc kendo-ui
我正在使用 KendoUI 层次网格来显示父/子数据。
我能够正确填写所有内容并填充网格,但在某些情况下父数据没有相应的子记录。
发生这种情况时,子网格标题仍会显示,但没有相应的记录。我想完全隐藏网格,或者至少不显示标题(这将呈现几乎相同的东西)。
有什么想法吗?
【问题讨论】:
标签: css asp.net-mvc kendo-ui
您没有共享任何代码,因此我们可以更好地了解您当前的设置 - 根据您的配置,有不同的方法。
您是否有主网格模型的属性,可用于确定您是否有子记录?
如果没有这样的属性,您将需要初始化您的子 Grid 并且它应该执行请求。根据响应,您可以使用dataBound 事件并在没有记录时隐藏网格。 或者你可以做相反的事情 - 你可以让 Grid 最初隐藏并在 dataBound 事件发生时显示它是否有任何记录。
如果您在主行中有属性表明没有子记录,您可以使用 Grid 的detailInit 事件来完全删除或隐藏子 Grid。
【讨论】:
在某些情况下我需要隐藏子网格(取决于一个变量)。我所做的是:
detailInit: function (e) {
if (globalVariable == "SomeValue") {
div = jQuery("<div class = 'addMaterialVendors'/>");
subGrid = MethodToCreateSubgrid(div, variables, e.data);
div.appendTo(e.detailCell);
}
else {
$(".k-hierarchy-cell").remove();
$(".k-hierarchy-col").remove();
}
},
【讨论】: