jstree - 如何启用文件夹&文件操作?

时间:2015-09-15 10:14:15

标签: javascript jquery ruby-on-rails contextmenu jstree

在rails 4.2.2中,我正在实现一个jstree功能。脚本如下所示,

$('#tree').jstree({
 'core' : {
   'data' : {
     'url' : function (node) {
       return '/users/files/treedata.json'
     },
     'data' : function (node) {
       return { 'id' : node.id };
     }
   }
 }
});

生成的JSON数据类似于

[{"id":1,"text":"Home","parent":"#","user_id":1,"asset_id":null,"root_node":true,"created_at":"2015-09-15T09:34:15.000Z","updated_at":"2015-09-15T09:34:15.000Z"},{"id":2,"text":"kishore","parent":"1","user_id":1,"asset_id":1,"root_node":false,"created_at":"2015-09-15T09:34:16.000Z","updated_at":"2015-09-15T09:34:16.000Z"}]

https://www.jstree.com

引用

现在根节点&子节点正在显示文件夹图标,如何更改子节点的图标?

还有如何启用文件夹和文件操作(" contextmenu")功能?

2 个答案:

答案 0 :(得分:1)

要更改文件图标,我们需要指定"输入"属于json。

"type": "itsfile"

现在,在jstree脚本中,您需要启用类型插件

"plugins": ["types"]

此外,您需要指定将类型的所有文件的图标更改为其文件

"types": {
        "itsfile": {
        "icon": "jstree-icon jstree-file"
    }
}

这是推荐的方法。

另外,关于你的第二个问题,你需要以与我们对类型相同的方式启用contextmenu插件。您需要将 contextmenu 添加到插件数组。

我希望这可以帮助你和其他人。

答案 1 :(得分:0)

根据manual

  

要更改节点的图标,请使用$message = array( 'merge_vars' => array(array( 'vars' => array( array( 'name' => 'FACEBOOKLINK', 'content' => 'http://www.facebook.com') )))); 属性。

因此,要显示自定义图标,请相应地指定数据。

还有一个技巧,如果您不需要任何图标,请指定icon