JsTree,JsTreeGrid-创建网格时获取父节点

时间:2019-02-27 13:25:51

标签: javascript jquery json ajax jstree

我将JsTree与JsTreeGrid插件一起使用。 Into

我想获得父节点的数量,将其乘以当前节点的数量,以获得扩展数量。

查看代码:

grid: {
    columns: [
        {header: "Title", value: function(node){return(node.text);}},
        {width: 150, header: "Quantity", value: function(node){return(node.data.quantity);}},
        {width: 150, header: "Extended Quantity", 
                value: function(node) {
                    return(get_parent(node).quantity*node.quantity);
                }}
    ]
}

它给我:未捕获的ReferenceError:未定义get_parent

1 个答案:

答案 0 :(得分:2)

您将必须使用jstree实例获取父节点的数据。网格文档似乎没有get_parent方法。这是通过从该实例获取jstree实例和父节点来完成此操作的一种方法。

var oTree = $('#jstree_demo_div');
oTree.jstree({
    "core": {
        //...
        //...
        'data': data
    },
    grid: {
        columns: [{ header: "Title", value: function (node) { return (node.text); } },
        { width: 150, header: "Quantity", value: function (node) { return (node.data.quantity); } },
        {
            width: 150, header: "Extended Quantity",
            value: function (node) {
                var parent = oTree.jstree(true).get_node(node.parent);
                if(parent.hasOwnProperty('data')){ //Root node has no data
                    return (parent.data.quantity * node.data.quantity);
                }
                return(node.data.quantity);
            }
        }]
    },
    "plugins": ["grid"]
});