Thanks for the quick response!
I think I am missing something about how the nodes are created in 3.0. Our tree data is derived from collections of data entity classes (SkillTreeItems) which we convert to json using the JsonConvert.SerializeObject library. So the start of the initial tree build looks something like this:
skillTree = $("#skillTree").jstree({
"core": {
"html_titles": true,
"check_callback" : true,
"data": @Html.Raw(JsonConvert.SerializeObject(Model.SkillTreeItems))
When I set a debugger break point in the event handler for the select_node event and look at the properties of the selected node, the data property is null, but there is an 'original' property that that has a 'metadata' sub-property and the metadata sub-property has all of the expected custom properties associated with the SkillTreeItems above. If I try modifying these metadata properties, I don't get an error, but the changes don't appear to be saved to the tree. What is the 'original' property of a node? Is there something we are doing that is causing custom data to show up under node.original.metadata instead of node.data?
Thanks!