【问题标题】:How to highlight a jsTree node based on a specific value?如何根据特定值突出显示 jsTree 节点?
【发布时间】:2019-01-07 03:15:22
【问题描述】:

我正在使用 jsTree 在 Oracle APEX v4.2 中构建我的树,一切正常。

我所追求的但不确定该怎么做的是,每当树中的一个节点以字母“S”开头时,在整个树中,我只想用黄色的背景颜色突出这些节点。

我之后的结果示例如下所示,其中我想要具有背景颜色的节点已用<*> 标记

KING
----------JONES
--------------------SCOTT  <*>
--------------------FORD
------------------------------SMITH  <*>
----------BLAKE
--------------------ALLEN
--------------------WARD
--------------------MARTIN
--------------------TURNER
--------------------JAMES
----------SAM  <*>

更新

jsTree 的一个例子,我上面的例子不是很多,可以在这里从 Tom 帮助我的另一个线程中找到,这里是 SO,即 jsTree 和 Oracle APEX - 见这里:

Username: apex_demo
Password: demo

http://apex.oracle.com/pls/apex/f?p=69001:2

根据这个使用相同概念 (jsTree) 的示例,我希望只有 Shelly Noble 会突出显示,但如果有其他名称开头使用“S”,这些也会以黄色背景色突出显示。

【问题讨论】:

  • 能否请您发布 jsTree 插件的 HTML 输出。
  • 嗨,Rory - 请查看我上面的更新以及 Oracle APEX 链接,以获取示例 jsTree 和 HTML。谢谢。

标签: javascript jquery jstree oracle-apex


【解决方案1】:

鉴于您问题中 jsTree 示例的 HTML 结构,以下内容应该有效:

$('#treecontainer a').filter(function() {
    return /^S/i.test($.trim($(this).text()));
}).addClass('highlight'); //amend the class as needed

Example fiddle

【讨论】:

  • Rory,不幸的是它似乎对我不起作用,即使您拥有的解决方案是正确的。我正在使用 IE8、jQuery 1.7.1,但我想我不确定根据 jsTree 的呈现方式将这段代码放在哪里。如果您查看此 url tpetrus.blogspot.be/2013/09/implementing-ajax-tree-in-apex.html 处的第一个 javascript 块 - 这是我构建 jsTree 的方式,但是一旦呈现,我不确定将解决方案代码放在哪里?谢谢。
  • 嗨,Rory,请忽略之前的评论。一切都好,通过将您的代码放在回调中,设法让这一切正常工作:{ onopen() }。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-06-11
  • 2017-08-12
  • 1970-01-01
  • 2015-10-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多