jstree上手文档 [初始化时默认选中、全部展开、获取实例の数据等问题]

263次阅读
没有评论

jstree官网:https://www.jstree.com/

——————-

实例化tree .jstree() 

默认样式:

var container = $('#xxx');      //container:treeの目标容器(jqery对象)
container.jstree({              
    'plugins': ["state"],       
    'state': {                  //一些初始化状态
        "opened":true,
    },
    'core' : {
        'data' :_treeData,      //treeの数据
    }
});

多选框样式:

container.jstree({
    core: {
        animation: false,
        'data':_data
    },
    // 这两个必须要
    checkbox: {
        tie_selection: false,
        whole_node: false
    },
    plugins: ["checkbox", "wholerow"]
});

多选框初始化时默认选中:


_data.state =  {"checked":true}; 
//选中根节点,如需选中其他节点需遍历_dataの所有节点并给他们加上此属性信息

右键菜单:

'plugins': ['contextmenu'],  //有这个就行
'core' : {
    'data' :_treeData,
    "check_callback" : true
},
//···
"contextmenu":{
    select_node:false,
    show_at_node:true,
    items:{
        "修改名称":{
            "separator_before"	: false,
            "separator_after"	: false,
            "_disabled"			: false,  //(this.check("rename_node", data.reference, this.get_parent(data.reference), "")),
            "label"				: "修改名称",
            "shortcut_label"	: 'F2',
            "icon"				: "glyphicon glyphicon-leaf",
            "action"			: function (data) {
                var inst = $.jstree.reference(data.reference),
                    obj = inst.get_node(data.reference);
                inst.edit(obj);
            }
        },
        "删除XX":{
            "separator_before"	: false,
            "icon"				: false,
            "separator_after"	: false,
            "_disabled"			: false, //(this.check("delete_node", data.reference, this.get_parent(data.reference), "")),
            "label"				: "删除XX",
            "icon"				:"glyphicon glyphicon-remove",
            "action"			: function (data) {
                var inst = $.jstree.reference(data.reference),
                obj = inst.get_node(data.reference);
                if(inst.is_selected(obj)) {
                    inst.delete_node(inst.get_selected());
                }
                else {
                    inst.delete_node(obj);
                }
            }
        },
        //其他菜单···
    }
}
//参考:https://blog.csdn.net/m0_37355951/article/details/77943933
//...

载入后,全部展开:

container.bind("loaded.jstree", function (e, data) {

    _treeContainer.jstree('open_all');

});

查看当前实例の数据

$(“xxx”).jstree()._model.data;

———————

额,好像这不是文档,全是案例了。。。 话说,这样好懂点|||

 

 

facingscreen
版权声明:本站原创文章,由 facingscreen2022-08-12发表,共计1643字。
转载说明:本文为搜栈网原创文章,除特殊说明外皆由CC-4.0协议发布,转载请注明出处,如有帮助欢迎打赏。
评论(没有评论)
验证码