datatables - DataTables 搜索布尔值
问题描述
我很难在我的 DataTables 对象的布尔列上的三状态下拉列表(任何、是和否)上应用搜索。
这是我的数据的示例行:
{
"Id": 1,
"FirstName": "John",
"LastName": "Doe",
"Email": "JohnDoe@email.com",
"Elevated": true,
"Activated": true
}
这是我的下拉标记:
<select class="form-control" id="elevated">
<option value="">Any</option>
<option value="true">Yes</option>
<option value="false">No</option>
</select>
这就是我用来搜索列的内容:
const elevated = $("#elevated option:selected").val();
grid.column("Elevated:name").search(elevated).draw();
发生的事情是,只要下拉选项为任何,它就会清除搜索,但只要下拉选项是或否,它就不会返回任何行。
将选项值设置为 1/0 或在搜索方法中指定 RegEx 参数都没有关系。结果是一样的。
解决方案
在浏览了一堆论坛后,我发现了发生了什么。我正在使用 columns.render 根据单元格的值显示一个图标。这样做会导致它与 columns.search 混淆。相反,我用 columns.createdCell 替换了 columns.render,操纵了现有的 DOM 来显示我的图标,然后 columns.search 就按预期工作了。
推荐阅读
- xmpp - 浏览器 ejabberd 中的不受信任的证书错误
- java - 在解析 JSON 数组时,在 org.json.JSONObject 类型的答案中获取异常“无法转换为 JSONArray”
- javascript - 比较两个 object.attribute 还是两个 object 更快?
- c++ - 使用 windows API c++ 的键盘输入
- css - 如何使不同长度的元素不与其他元素重叠?
- python - 如何使用 Python 自动执行在 Windows 命令行上以交互方式接受多个用户输入的外部 .exe?
- reactjs - React:理解 refs 并针对子 refs
- python - python中init_ntoa的字符串到十六进制
- c - 获取字符数组的用户输入并使用 C 程序显示它
- python-3.x - Python在解析时返回不同的excel文件名