How to get node object by node id ?

2,696 views
Skip to first unread message

eyup alemdar

unread,
Dec 11, 2014, 2:30:25 AM12/11/14
to jst...@googlegroups.com
I'm using jstree 3.0 and I have a tree like that:

- Directory1
    * Entity1
    * Entity2
    -Directory2
        * Entity3
        * Entity4
- Directory3
     * Entity5

I can get Directory1's id in `delete_node` event when i delete "Directory1".

$("#menutree").jstree(true).bind("delete_node", function (event, data) {
   
var node = data.node    //   Get Deleting Node Object
   
var children = node.children;   //  Get It's Children
}

 I can only get children ids (Entity1, Entity2, Directory2), not object itself. I need to get Directory2 object to reach children under it.

var getNode = $('#' + children[0]); //  doesnt return the object like "node" on above code.

 I only have IDs. So How can i get node object by id ?

Ivan Bozhanov

unread,
Dec 11, 2014, 5:28:39 AM12/11/14
to jst...@googlegroups.com
$("#menutree").jstree(true).get_node("NODE_ID"); // this will return the node object, notice NO "#"
$("#menutree").jstree(true).get_node("NODE_ID", true); // this will return the DOM object IF the node is rendered (it may not be)

If you want to delete a node by ID use this:
$("#menutree").jstree(true).delete_node("NODE_ID"); // notice NO "#"

Best regards,
Ivan
Reply all
Reply to author
Forward
0 new messages