Blu*_*ird 2 jquery json kendo-ui kendo-treeview
我有一个kendoui树视图,显示从json数据源获得的一些数据.树视图正在工作,除非它显示子项的扭曲,即使没有子项也是如此.
我相信这与我的json字符串有关但在这一点上我不相信我可以改变它.
这是json字符串:
[{"Title":"Shared Documents","spriteCssClass":"folder","LastModified":"1/15/2013 10:42:20 AM","Items":[{"Title":"Folder 1","spriteCssClass":"folder","LastModified":"1/15/2013 10:42:20 AM","Items":[{"Title":"Subfolder 1","spriteCssClass":"folder","LastModified":"1/15/2013 10:41:52 AM","Items":[]},{"Title":"Test Tax Document.docx","spriteCssClass":"docx","LastModified":"1/15/2013 10:42:20 AM","Items":[]}]}]}]
Run Code Online (Sandbox Code Playgroud)
我认为问题是,即使没有物品,物品[]仍然存在.
这是我的树视图的代码......
var treeDS = new kendo.data.HierarchicalDataSource({
data: json,
schema: {
model: {
children: "Items"
}
}
});
var treeview = $("#CCA_DocLibTreeViewer_Tree").kendoTreeView({
template: "#= item.Title # - #= item.LastModified # <a href='\\#'>View</a>",
dataSource: treeDS,
dataTextField: ["Title", "Title"]
}).data("kendoTreeView");
Run Code Online (Sandbox Code Playgroud)
关于我能做些什么的任何想法?
你是对的,问题是如果它Items无论如何都length假设有孩子.
解决方案是要么不生成那些空Items或定义treeDS为:
var treeDS = new kendo.data.HierarchicalDataSource({
data : json,
schema: {
model: {
children : "Items",
hasChildren: function (node) {
return (node.Items && node.Items.length > 0);
}
}
}
});
Run Code Online (Sandbox Code Playgroud)
你可以看到我已经定义了一个hasChildren验证node.Items存在的函数,它length实际上是大于0.
你可能会在这里看到它在JSFiddle中运行
| 归档时间: |
|
| 查看次数: |
2033 次 |
| 最近记录: |