javascript - DataTables 智能搜索 - 未按预期运行
问题描述
search() 函数的文档指定了功能:
不按顺序匹配单词。例如,如果您搜索 Allan Fife,它将匹配包含单词 Allan 和 Fife 的行,无论它们在表中出现的顺序或位置如何。
但是,我认为情况并非如此。如果您在此示例https://datatables.net/examples/api/regex.html上搜索“chief junior”(不带括号),您会期望返回包含“chief”或“junior”的所有结果,但 API 似乎使用 AND 而不是 OR。
我正在尝试创建一个多选下拉列表来过滤表格,但我需要能够选择多个参数。有没有办法告诉我们 API OR 而不是 AND 或者这不可用?
解决方案
我认为您误读了您引用的原始文本-“例如,如果您搜索 Allan Fife,它将匹配包含单词 Allan 和 Fife 的行”。请注意,它表示“一行”,其中包含单词 Allan 和 Fife。在您的示例“chief junior”中,没有一行包含这两个词。
如果您想要任何包含“chief”或“junior”的行,请输入“(junior|chief)”,勾选“Treat as a regex”并取消勾选“Use smart search”。
推荐阅读
- rust - 使用 rustling-ontology 时如何减少或加速重建?
- nuget - NuGet - 在更新之间使用缓存
- linux - .net 核心字符串运算符不会以异常结果执行
- typescript - 访问 jwt-decode 对象时出现打字稿错误
- node.js - 为什么 npm 有 2 类依赖项?
- c++ - 如何使用 C/C++ 语言获取 RTSP 的当前帧?
- .net - mscorlib 和 netstandard 中定义的系统类型
- python - 处理大量请求的 aiohttp session.get() 超时问题
- angular - 如何连接离子ngStyle中的变量?
- python - 制作一个循环列表的 Python 脚本