二维数组与 JsTree 兼容 JSON
2D Array to JsTree compatible JSON
我目前有一个 javascript 函数,它接受一维数组并将它们添加到树对象中。
var tree = {}
function addToTree(tree, arr) {
for (var i = 0, length = arr.length; i < length - 1; i++) {
tree = tree[arr[i]] = tree[arr[i]] || {};
}
tree[arr[i]] = null;
}
addToTree(tree, ["a", "b", "c", "f"])
addToTree(tree, ["a", "b", "d", "h", "l"])
我希望有人可以帮助我格式化它,以便它 returns 将对象转换为在这里找到的 JSTree 兼容对象:https://www.jstree.com/docs/json/
对于数组 ["a", "b", "c", "f"]
中的每个元素,您首先需要创建一个节点(一个与 JSTree 兼容的节点),然后将该节点添加到我们的 json 对象 tree
建筑物。
function createTreeNode(value) {
return {'text': value};
}
现在函数addToTree
可以
var tree = {'core': {'data': []}}; //This initialization is needed
function addToTree(tree, arr) {
for (var i = 0; i < arr.length; i++) {
node = createTreeNode(arr[i]);
tree.core.data.push(node);
}
}
addToTree(tree, ["a", "b", "c", "f"]);
addToTree(tree, ["a", "b", "d", "h", "l"]);
顺便说一句:如果您使用 BootStrap,请考虑 jonmiles tree
我目前有一个 javascript 函数,它接受一维数组并将它们添加到树对象中。
var tree = {}
function addToTree(tree, arr) {
for (var i = 0, length = arr.length; i < length - 1; i++) {
tree = tree[arr[i]] = tree[arr[i]] || {};
}
tree[arr[i]] = null;
}
addToTree(tree, ["a", "b", "c", "f"])
addToTree(tree, ["a", "b", "d", "h", "l"])
我希望有人可以帮助我格式化它,以便它 returns 将对象转换为在这里找到的 JSTree 兼容对象:https://www.jstree.com/docs/json/
对于数组 ["a", "b", "c", "f"]
中的每个元素,您首先需要创建一个节点(一个与 JSTree 兼容的节点),然后将该节点添加到我们的 json 对象 tree
建筑物。
function createTreeNode(value) {
return {'text': value};
}
现在函数addToTree
可以
var tree = {'core': {'data': []}}; //This initialization is needed
function addToTree(tree, arr) {
for (var i = 0; i < arr.length; i++) {
node = createTreeNode(arr[i]);
tree.core.data.push(node);
}
}
addToTree(tree, ["a", "b", "c", "f"]);
addToTree(tree, ["a", "b", "d", "h", "l"]);
顺便说一句:如果您使用 BootStrap,请考虑 jonmiles tree