我有一个现有的树,它建立在3级层次结构的JSON之上。
Root - > ChildLevel1 - > ChildLevel2(lazy = true)
上面的树数据作为pageload上的源加载。在这一点上一切正常。现在 - 在childlevel2上我试图像这样填充孩子:
lazyLoad: function (event, data) {
var json = "{children:[ {\"title\": \"Sub item\", \"lazy\": true }, {\"title\": \"Sub folder\", \"folder\": true, \"lazy\": true } ]}";
data.result = json;
}
我一直收到以下异常:
未捕获错误:Fancytree断言失败:预期的子阵列 在Function.error(jquery-1.12.4.min.js:2) 在_assert(jquery.fancytree.js:82) 在jquery.fancytree.js:3242 在我(jquery-1.12.4.min.js:2) at Object.add [as done](jquery-1.12.4.min.js:2) 在Fancytree.nodeLoadChildren(jquery.fancytree.js:3229) 在Fancytree._callHook(jquery.fancytree.js:2289) 在FancytreeNode.load(jquery.fancytree.js:1229) 在Fancytree.nodeSetExpanded(jquery.fancytree.js:3965) 在Fancytree.nodeToggleExpanded(jquery.fancytree.js:4230)
答案 0 :(得分:1)
您正在传递定义对象的JSON字符串,但该插件需要“子数组”。尝试:
lazyLoad: function (event, data) {
var res = [
{ title: "Sub item", lazy: true },
{ title: "Sub folder", folder: true, lazy: true }
];
data.result = res;
}