У меня Dynatree, который загружает данные с контроллера ASP.NET MVC3. Для первого вызова дерево должно загружать данные, а затем по сторонам дерево должно загружаться по требованию (отложенная загрузка). Проблема, с которой я сталкиваюсь, заключается в том, что в первый раз, когда данные возвращаются из контроллера в дерево, данные не отображаются должным образом. В основном имена узлов идут как NULL. Но я проверил, что контроллер возвращает данные правильно. Как мне отформатировать данные, которые я получаю на стороне клиента.
Я использую следующую кодовую базу:
treeElement.dynatree({
title: "Lazy loading sample",
fx: { height: "toggle", duration: 200 },
autoFocus: false,
initAjax: {
url: "/DataManager/ViewNodes",
data: { mode: 'all' }
//Here after I receive the data, how do I show the nodes ??
},
onActivate: function (node) {
alert(node.getKeyPath());
},
onLazyRead: function (node) {
node.appendAjax({
url: ""
});
}
});
JSON, который возвращается из контроллера, имеет следующую структуру:
[
{"ChildNodes": [],"Parent":null,"Type":9,"HasRaps":false,"HasReports":false,"TotalChildCount":0,"NodePaths":null,"ID":2,"Name":"Omega",},
{"ChildNodes":[{"ChildNodes": [],"Parent":null,"Type":0,"HasRaps":false,"HasReports":false,"TotalChildCount":0,"NodePaths":null,"ID":0,"Name":"LoadingData..."}],"Parent":null,"Type":8,"HasRaps":false,"HasReports":false,"TotalChildCount":1,"NodePaths":null,"ID":14,"Name":"PARIS"}
]
Может кто-нибудь помочь.
Спасибо,
Anirban