Как скрыть указанный c узел от jsTree - PullRequest
0 голосов
/ 14 марта 2020

Я создаю jstree и хочу скрыть узел с расширением .pdf. Я слишком много искал, но у меня нет способа скрыть этот узел. что я пробовал до сих пор ...

jsTree создание

$(function () {
   var selectedData;
   $('#jstree').jstree({
      "core": {
         "multiple": true,
         "check_callback": false,
         'themes': {
            "responsive": true,
            'variant': 'larg',
            'stripes': false,
            'dots': false
         }
      },
      "types": {
          "default": {
              "icon": "fa fa-folder icon-state-warning icon-lg"
          },
          "file": {
              "icon": "fa fa-file icon-state-warning icon-lg"
          }
      },
      "plugins": ["dnd", "state", "types", "sort", "checkbox"]
   });           
});

$("#jstree").bind('ready.jstree', function (event, data) {
    var $tree = $(this);
    $($tree.jstree().get_json($tree, {
      flat: true
    }))
   .each(function (index, value) {
       debugger
       var node = $("#jstree").jstree().get_node(this.id);
       var lvl = node.parents.length;
       var idx = index;
       var str = value.text.split('.');
       var count = str.length;

       if (str[count - 1] == "pdf") {

       /* The issue is coming here */
       $("#jstree").jstree(false).hide_node(node);

      }

  });
});
/* This is a different approach I tried */
$('#jstree').on("after_open.jstree", function (e, data) {

   if (data.node.id == 4) {
      var node = $("#jstree").jstree().get_node(this.id);
      node.hide();
   }
});
...