Jquery JSTree选择_节点事件和复选框

Jquery JSTree选择_节点事件和复选框,jquery,checkbox,jstree,Jquery,Checkbox,Jstree,我有一个jstree,在其中我使用select_node事件切换nodesexpand,因此删除了树中的切换箭头,因为它们看起来很难看,我不需要它们 现在我已经添加了复选框插件以在树中使用,但是发现当插件处于活动状态时,select_节点事件被禁用 如何在复选框插件处于活动状态时切换节点,而不重新添加丑陋的切换箭头?我可以在check/uncheck事件中执行此操作,但我不希望每次展开节点时都选中/取消选中。JsTree提供了样式,因此您可以定义自己的样式并加载它。 您只需替换sprite图像,

我有一个jstree,在其中我使用select_node事件切换nodesexpand,因此删除了树中的切换箭头,因为它们看起来很难看,我不需要它们

现在我已经添加了复选框插件以在树中使用,但是发现当插件处于活动状态时,select_节点事件被禁用

如何在复选框插件处于活动状态时切换节点,而不重新添加丑陋的切换箭头?我可以在check/uncheck事件中执行此操作,但我不希望每次展开节点时都选中/取消选中。

JsTree提供了样式,因此您可以定义自己的样式并加载它。 您只需替换sprite图像,就可以了。

JsTree提供了样式,您可以定义自己的样式并加载它。
您只需替换sprite图像,基本上就是这样。

假设示例树如中所示,带有 箭头被移除。如果不中断ui交互,则无法在单击事件上同时执行复选框选择和分支切换。但是,由于非叶节点不携带模型数据 它们的复选框仅用作全选/取消全选功能,您可以删除 复选框,将其上的单击事件重新定义为切换节点,而 剩下的都没想到

您可以删除非叶li节点上的复选框,并对其进行单击事件 拨动树叶。这将实现您想要的行为,但会消除 非叶节点的全选/取消全选功能复选框

只需在示例页面上添加下面标有+的行

$("#demo1").jstree({ "plugins" : [ "themes", "html_data", "checkbox" ] }); + $("#demo1 li").not(".jstree-leaf").each(function() { + $("a ins.jstree-checkbox", this).first().hide(); + $("a", this).first().click(function(event) { + $("#demo1").jstree("toggle_node", "#"+$(this).parent().attr('id')); + event.stopPropagation(); + event.preventDefault(); + }); + });
假设您有示例树,如中所示,带有 箭头被移除。如果不中断ui交互,则无法在单击事件上同时执行复选框选择和分支切换。但是,由于非叶节点不携带模型数据 它们的复选框仅用作全选/取消全选功能,您可以删除 复选框,将其上的单击事件重新定义为切换节点,而 剩下的都没想到

您可以删除非叶li节点上的复选框,并对其进行单击事件 拨动树叶。这将实现您想要的行为,但会消除 非叶节点的全选/取消全选功能复选框

只需在示例页面上添加下面标有+的行

$("#demo1").jstree({ "plugins" : [ "themes", "html_data", "checkbox" ] }); + $("#demo1 li").not(".jstree-leaf").each(function() { + $("a ins.jstree-checkbox", this).first().hide(); + $("a", this).first().click(function(event) { + $("#demo1").jstree("toggle_node", "#"+$(this).parent().attr('id')); + event.stopPropagation(); + event.preventDefault(); + }); + });
最新版本的jstree现在允许通过单击复选框或节点标题来分别检查和选择节点。

最新版本的jstree现在允许通过单击复选框或节点标题来分别检查和选择节点。

这并没有回答我关于如何切换节点的问题当复选框未使用箭头或我可能替换箭头的任何图像处于活动状态时的节点这并不能回答我的问题,即当复选框未使用箭头或我可能替换箭头的任何图像处于活动状态时,如何切换节点-从那里获取最新版本。-从那里获取最新版本。