[英]In jsTree , How to get Node information by node id?
在jsTree中,如何按节点ID获取节点信息?
我知道跟随节点的id,即295然后如何获得完整的节点信息
<item id="295" parent_id="192" title="itemTitle" version="1">
<content><name>Bhushan Sambhus</name></content>
</item>
上面渲染成jsTree的xml部分如下
$("#treeViewDiv").jstree({
"xml_data" : {
"data" : "" +
"<root>" +
"<item id="295" parent_id="192" title="itemTitle" version="1">"+
"<content><name>Bhushan Sambhus</name></content> "+
"</item>"
}
"plugins" : [ "themes", "xml_data","ui" ]
});
像跟随psudo代码的东西
function getNodeByNodeID(node_id){
// some code
// $.jstree.get_node ...... etc ?
//
return relatedNodeInformation;
}
var nodeInfo = getNodeByNodeID(providedNodeID) // psudo code
// any api in jstree to get nodeInfo by providedNodeID?
var parent_id_value = nodInfo.attr("parent_id");
var title_value = nodInfo.attr("title");
var version_value = nodInfo.attr("version");
var node_name = nodInfo.children("a").text()
alert(parent_id_value+" :: "+title_value+" :: "+version_value+" :: "+node_name);
输入: 295
输出: 192 :: node_name :: 1 :: node_name
任何有关此事的帮助或指导将不胜感激
如果我正确理解你的问题,你可以像这样完成你想做的事情:
var nodInfo = $("#" + providedNodeId);
var parent_id_value = nodInfo.attr("parent_id");
var title_value = nodInfo.attr("title");
var version_value = nodInfo.attr("version");
var node_name = nodInfo.children("a").text();
alert(parent_id_value+" :: "+title_value+" :: "+version_value+" :: "+node_name);
只是想帮助保持最新的答案。 使用jstree 3.1.0,使用以下代码获取节点对象(不是DOM对象):
var treeMain; // reference holder
$(document).ready( function () { // when the DOM is ready
treeMain = $('#treeMenus').jstree(); // create the tree and get the reference
});
function getNode( sNodeID)
{
return $.jstree.reference(treeMain).get_node(sNodeID); // use the tree reference to fetch a node
}
我在StackOverflow上看到了这个问题的几个答案,所有人都谈到了回到树项的DOM对象。 我愿意打赌大多数人都会问这个问题是否真的要回到树项的底层JSON数据对象,这就是为什么他们说他们想要节点对象(具有.original属性)。 具体来说,您需要这样来实现诸如“创建”功能之类的功能,其中您需要使用设置为父JSON数据对象的ID的ParentID创建新的JSON数据对象。 我搜索了2天,但在jstree文档中没有找到任何清楚的解释:
$.jstree.reference(treeMain).get_node(sNodeID);
简单的电话。 在他们的辩护中,他们确实有一个埋在这里的例子:
http://www.jstree.com/docs/interaction/
但这是大多数人不会关心的一个例子(用户将在大多数时间选择节点),当然不清楚它实际上能做什么。 无论如何......希望这有助于拯救别人几天。 =)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.