我正在尝试从mvc控制器显示我的json,以显示在已复选的kendo ui treeview上。 asp.net mvc视图上的代码和发送到视图的json在下面给出
MyDoc.cshtml code
<script>
$("#treeview").kendoTreeView({
checkboxes: {
checkChildren: true,
},
dataSource: {
//type: "odata",
transport: {
read: {
url: '@Url.Content("~/Document/GetMyDocs")',
type: "post",
dataType: "json"
}
},
schema: {
model: {
id: "id", text:"Name",
children: "Files"
}
}
},
dataTextField: [ "Name"],
check: onCheck
});
json object
[{"id":1,"Name":"Checking",
"Files":[{"Filename":"doc10","id":"1afd5a4f-086f-44d2-9287-8098384e379e"},
{"Filename":"doc11","id":"89ea3366-14b8-4e91-8273-6e2a51fbe516"}]},
{"id":2,"Name":"Saving",
"Files":[{"Filename":"doc20","id":"c7a88f5d-067e-4f20-93b6-da6eff69d532"},
{"Filename":"doc21","id":"8a0a62ed-1b4a-4e5e-8d59-d57a975a7ab0"}]}]
当我查看页面时只有顶级文本,&#34;检查&#34;和#34;保存&#34;显示。 “文件”下的日期显示为未定义。
由于
答案 0 :(得分:0)
看起来Kendo UI对父节点和子节点都使用了dataTextField:[“Name”]。由于子数据中的json没有等于“Name”的字段名称,因此它是未定义的。一旦我将属性“FileName”更改为“Name”,它就可以了。 Telerik的文档与其他第三方控件一样残酷。他们所有的演示都更适合展示使用少量硬编码数据创建性感外观的UI,而不是展示如何创建真实世界的应用程序,这是多么轻松!