在jsTree中添加rel标记/禁用链接

我试图将rel标签添加到jsTree为空的所有rel。 我已经设法让它在jsFiddle中工作,但是当尝试将相同的代码应用于完整的树时,它不起作用(也就是说,rel标记仍然是空白/空)。 我从我的树中获取了生成的源代码以用作此示例,这就是为什么我感到困惑的是代码无效。

这是工作的jsFiddle版本: 在这里查看 。

此外,如果rel =’disabled’,是否有可能删除或禁用a href以禁用链接?

对于那些好奇的人,我做了几件事 –

  1. 我在数据库中更新了所有我想要禁用的特定类型(即文件夹)的链接。 空白的rel标签也有效。 如果您无法访问数据库,我还尝试了以下应用于.bind(“before.jstree”)的代码:

    $('li[rel=""]').attr('rel','disabled'); 
  2. 我将绑定应用于jsTree实例。 以下代码是我使用的,

     .bind("before.jstree", function (e, data) { $('ul li[rel="file"] > a').each(function() { $(this).contents().unwrap(); }); }) 

这将解开具有rel =“file”的链接(满足使节点不可点击的需要 。您可以将rel标记设置为您想要解包的任何其他内容。

编辑:我也让它更简单,只需禁用单击和双击,如下所示:

  .bind("before.jstree", function (e, data) { $('ul li[rel="file"] > a').each(function() { $(this).click(false); $(this).dblclick(false); }); }) 

我希望这有帮助!