【发布时间】:2012-11-01 14:18:23
【问题描述】:
我正在使用 jQuery 插件 DataTables。我有一个包含 HTML 输入和选择的数据表。当我使用 DataTable 搜索过滤器过滤结果并搜索具有选定值“打开”的所有下拉列表时,没有任何变化。
我相信这种情况正在发生,因为表格中的每个下拉菜单都有相同的选项,并且过滤器正在搜索它们并返回所有结果,因为它们都匹配。
如何让过滤器只搜索选定的值而不是下拉列表的所有选项?
我试图找到解决方案,但我只能找到如下结果:
这些都涉及为每列添加自定义过滤器,我只想使用现有的 DataTable 过滤器。
示例
Live example of the problem,搜索“打开”或“关闭”
代码
<table>
<thead>
<tr>
<th>Name</th>
<th>Status</th>
</tr>
</thead>
<tbody>
<tr>
<td><input name="name" type="text" value="Need more memory" id="name1"></td>
<td><select name="status" id="status1">
<option value="2">Closed</option>
<option selected="selected" value="1">Open</option>
</select>
</td>
</tr>
<tr>
<td><input name="name" type="text" value="Can't connect" id="name2"></td>
<td><select name="status" id="status2">
<option selected="selected" value="2">Closed</option>
<option value="1">Open</option>
</select>
</td>
</tr>
</tbody>
</table>
【问题讨论】:
-
有什么方法可以使用 JSON 而不是将 HTML 渲染到数据表中?使用 JSON 数据,这将很容易 :)
-
@loncar 可能,这将如何改变我的排序?无论数据来自哪里,排序不都是一样的吗?
标签: javascript html datatables