jstree - 仅针对子节点的 jsTree 搜索查询
问题描述
我正在使用带有搜索插件的 jsTree。现在我希望搜索只匹配子节点而不是父节点。
这是我已经实现的:
"search": {
case_insensitive: true,
show_only_matches: true,
search_leaves_only: true,
}
这是我的树的一个例子:
▼ Parent1
└ child 1
ParentABC
▼ Parentxyz
└ child abc
ParentABC
没有子节点,如果我搜索“abc”,两者ParentABC
都child abc
显示,但预期的结果应该child abc
只有。
search_leaves_only: true
在子节点上效果很好,因为它们本身没有子节点。jsTree 在没有子节点时将节点视为叶子。
那么我可以通过什么方式仅对子节点进行搜索查询?
编辑: 解决方案
我只需要使用search_callback
自定义功能。这里是:
"search": {
show_only_matches: true,
search_callback: function (searchString, node) {
if (node.parent != "#" && node.text.toUpperCase().includes(searchString.toUpperCase()) == true) {
return node;
}
}
}
我填充树的方式是使用 JSON 数据,并且我的所有父节点的属性都parent
为"#"
. case_insensitive: true
不再工作了,这就是我使用的原因toUpperCase()
解决方案
推荐阅读
- html - 我的网站对移动设备不友好,只有滑块没有响应,我想让滑块响应,
- css - rollup 'rollup-plugin-postcss' 不要将 css 注入头部
- azure - 无法让 cloudtor:azure Docker 插件与最新版本的 Docker/插件一起使用
- mysql - 如何根据逻辑自查表并添加列?
- java - 为什么赋值运算符链过程以从右到左的顺序进行
- reactjs - 通过 netlify 部署反应应用程序时出现问题 - 环境变量
- authentication - 如何找出单点登录从 Google 和 Facebook 收集了哪些数据?
- angular - API Rest wordpress 上的 Angular HttpClient
- reactjs - ReactJS+Typescript:为什么React.Component中需要State类型
- android - 如何从 Activity 2 imageview2 中的用户选择在 Activity1 中显示相同的 imageview1?