javascript - 如何将节点识别为根节点?

标签 javascript jquery jquery-plugins jstree

我想在现有节点内部或下方创建一个节点,具体取决于它是否是根节点。 (树小部件通常是树列表或没有可见根节点的树。)

我尝试了 get_parent,但我如何知道它是否是根节点?

var parent = $("#demo1").jstree('_get_parent', $("#foo"));
var node = $("#demo1").jstree('_get_node', $("#foo"));

令我困惑的是 get_node 似乎返回与 get_parent 相同的对象。

我正在使用 jstree_pre1.0_fix_1。

编辑:

我最终检查了 parent 的 parent 的已知 ID。

var node = $(e.replyto);
if (node.length) {
  if (node.parent().parent().attr('id') == 'demo1') {
    $("#demo1").jstree("create_node", node, 'last',{'attr': {'id':e.id}, 'state':'open', 'data': e.data}) ;
  } else {
    $("#demo1").jstree("create_node", node, 'after',{'attr': {'id':e.id}, 'state':'open', 'data': e.data}) ;
  }
} else {
    $("#demo1").jstree("create_node", -1, 'after',{'attr': {'id':e.id}, 'state':'open', 'data': e.data});
}

最佳答案

您可以调用get_parent()在节点上。如果它返回“#”,则该节点是根节点。例如:

var node = ...;

if($('#demo1').jstree(true).get_parent(node) == '#') {
    // node is a root node
}

关于javascript - 如何将节点识别为根节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10069548/

相关文章:

javascript - 如何使用 Angular 8 为对象数组提供不同的日期

javascript - 根据 CSV 值切换可见性

javascript - Highcharts 如果标题包含数字,则显示无效数据

javascript - 通过jquery获取除最后一个之外的输入值

javascript - replaceChild jQuery 等价物

jQuery:在文本区域中获得焦点时,删除默认文本+更改颜色,在取消焦点时-将文本放回原处

javascript - 在每个特定时间间隔更新值并显示在 .cshtml 中

jquery - 仅当禁用 javascript 时才启用禁止提交事件/提交按钮

javascript - 如何在javascript中将对象键点表示法转换为对象树

jquery - 如何创建递归 jQuery 函数?