2016-03-21 5 views
0

Ich möchte die Art ändern, wie JSTree Blattknoten identifiziert. Heute wird nach der untergeordneten Eigenschaft des Knotens gesucht, um festzustellen, ob es sich um einen booleschen Wert handelt, oder um ein Array mit mindestens einem untergeordneten Knoten. ReferenceÄndern Sie die Art, wie JSTree Blattknoten identifiziert

Ich möchte eine Knoteneigenschaft namens isLeaf erstellen, so dass jsTree verstehen würde, dass der Knoten für AJAX-Laden des Teilbaums geöffnet werden kann.

Ich versuchte Standard is_parent Methode, wie diese außer Kraft zu setzen:

$.jstree.core.prototype.is_parent = function(node) { 
    return !node.original.isLeaf; 
}; 

Aber aus irgendeinem Grund diese Methode nicht für alle Baumknoten genannt wird.

Ich bin mit ngJsTree

Wer weiß, wie kann ich dieses Verhalten erreichen?

Antwort

0

Ich schaffte es, damit durch Iterieren über AJAX-Antwort und Ändern jedes Knotens ohne Kinder zu Kindern = wahr.

success : function(nodeRoot) { 

    var validateChildrenArray = function(node) { 

     if (!node.children || node.children.length === 0) { 
      node.children = true; 
     } 
     else { 
      for (var i = 0; i < node.children.length; i++) { 
       validateChildrenArray(node.children[i]); 
      } 
     } 

    }; 
    for (var i = 0; i < nodeRoot.length; i++) { 
     validateChildrenArray(nodeRoot[i]); 
    } 
} 

Warten auf eine bessere Lösung ...

Verwandte Themen