DataTable带搜索功能时全选复选框的问题及解决
DataTable全选复选框仅选中可见行的问题解决
在展示数据库数据的DataTable中,我们配置了带删除操作和复选框的列,相关实现代码如下:
删除列复选框的HTML示例
<td> <a href="/item/delete/2"><i class="far fa-trash-alt"></i></a> <input type="checkbox" name="delete" value="2" id="delete_item2" class="delete_item"> </td>
初始全选功能的JavaScript代码
$('#checkAll').click(function() { if($('#checkAll').is(":checked")) $('.delete_item').prop('checked', true); else $('.delete_item').prop('checked', false); });
这段代码在常规场景下运行正常,但结合DataTable的搜索筛选功能时出现问题:当用户搜索后仅展示部分行,点击全选复选框会选中所有行(包括被搜索隐藏的行)。我们原本计划通过{search:'applied'}参数实现仅对可见行执行选中操作,但最初未找到正确的实现方式。
更新:
经测试检查实际应用代码,发现代码与示例存在差异,修正该差异后,全选复选框仅会选中当前可见的行,问题已解决。
内容的提问来源于stack exchange,提问作者Paul Zakharov
相关产品推荐
相关产品推荐

