我(第一次)使用fancytree
。似乎很适合我的问题,但是我遇到了一个问题。
我正在使用表扩展名,以允许用户向树的节点添加其他信息。最后,我想将整个树转换为一些JSON并将其make发送到服务器。
到目前为止,我的代码如下所示:
function readTree(tree) {
var d = tree.toDict(true, function(node){
console.log('looking at ' + node.title);
var tdList = $('tr.fancytree-active>td');
/* read the attributes */
node.attr = {
ctime : tdList.eq(2).find("input").val(),
filesize : tdList.eq(3).find("input").val(),
user : tdList.eq(4).find("input").val(),
group : tdList.eq(5).find("input").val(),
permissions : tdList.eq(6).find("input").val()
};
});
console.log(d);
}
问题在于,在遍历树期间,“ fancytree-active”未添加到当前遍历的节点。
所以我的问题可以表述为:
如何在toDict()回调的上下文中访问给定节点的html对象?
如果无法做到这一点,除了读取整个tr并手动进行提取之外,还有其他读取树的方法吗?
最佳答案
在遍历期间,您可以通过<tr>
访问节点的node.tr
,因此您的代码可能会这样工作(未经测试):
var tdList = $(">td", node.tr);
关于javascript - Fancytree:如何从ext-table获取内容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31440102/