首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从数组创建jqtree

如何从数组创建jqtree
EN

Stack Overflow用户
提问于 2015-02-06 21:15:24
回答 1查看 94关注 0票数 1
代码语言:javascript
复制
var count = 0;
var subcount = 0;
var subdata = [];
var treeData = [];
for (var catId in cats) {
    for (var subCatId in cats[catId].m_itemGrpList) {
        subdata[subcount] = [{
                            id: subCatId,
                            label: GetDisplay(cats[catId].m_itemGrpList[subCatId])
        }];
        subcount = subcount + 1;
    }
    treeData[count] = [{
        id: catId,
        label: GetDisplay(cats[catId]),
        children: subdata
    }];
    count  = count + 1;
}

$tree.tree({
    data: treeData,
    onCreateLi: function(node, $li) {
        if (node.color) {
            var $title = $li.find('.jqtree-title');
            $title.addClass(node.color);
        }
    }
});

当我尝试这样做时,将创建一个数组对象并将其存储在数组中,但是jqtree接受对象,而不是数组中的对象。我如何才能做到这一点。

此树有父节点,一个父节点可以有多个子节点。

EN

回答 1

Stack Overflow用户

发布于 2015-02-09 03:47:19

我知道答案了。仅供其他初学者使用。我使用了错误的数据结构。我应该这样做:

代码语言:javascript
复制
var treeData = [];
    for (var catId in cats) {
        var subdata = [];
        var subCatObj;
        for (var subCatId in cats[catId].m_itemGrpList) {
            if(cats[catId].m_itemGrpList[subCatId].m_totalCount <=0)
                continue;
            subCatObj = {
                            id: subCatId,
                            label: GetDisplay(cats[catId].m_itemGrpList[subCatId])
                        }
            subdata.push(subCatObj);
        }
        var catObj = {
                        id: catId,
                        label: GetDisplay(cats[catId]),
                        children: subdataenter code here
                    }
        treeData.push(catObj);
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28366654

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档