jquery - 排除特定类的搜索过滤器的数据表
问题描述
我有一个 HTML 表格,实际上我的网站上有更多表格。所以我创建了一个名为 的类datatable
,它涵盖了我的大部分通用表需求。对于导出,如 PDF 和 Excel,我设法排除了带有 class 的列ignore
。
我想ignore
动态排除带有类的列。我希望能够在类中设置更多列,ignore
并避免过滤器通过这些列。不一定会有 a button
ora
元素,所以请避免暗示我只是排除这些。
在特定情况下,我有一个 name Edit Valvasor
,我希望过滤器在我输入过滤器时找到带有 的行"Edit"
并忽略带有 的列Edit buttons
。
示例可以在这里找到:http: //jsfiddle.net/t1h9ugqa/
Javascript:
$(document).ready(function() {
$('.datatable').DataTable({
lengthMenu: [
[15, 25, 50, -1],
[15, 25, 50, "All"]
],
pageLength: 25,
dom: '<"html5buttons"B>lTfgitp',
aaSorting: [],
buttons: [{
extend: 'copy',
exportOptions: {
columns: ':not(.ignore)',
}
},
{
extend: 'csv',
exportOptions: {
columns: ':not(.ignore)',
}
},
{
extend: 'excel',
exportOptions: {
columns: ':not(.ignore)',
}
},
{
extend: 'pdf',
exportOptions: {
columns: ':not(.ignore)',
}
},
{
extend: 'print',
customize: function(win) {
$(win.document.body).addClass('white-bg');
$(win.document.body).css('font-size', '10px');
$(win.document.body).find('table')
.addClass('compact')
.css('font-size', 'inherit');
}
}
]
});
});
HTML:
<table class="datatable">
<thead>
<tr>
<th>ID</th>
<th>Name</th>
<th>Sum</th>
<th class="ignore"></th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>Edit Valvasor</td>
<td>1034</td>
<td>
<a class="btn btn-primary" href="#">Edit</a>
</td>
</tr>
<tr>
<td>2</td>
<td>Samuel Grixis</td>
<td>655</td>
<td>
<a class="btn btn-primary" href="#">Edit</a>
</td>
</tr>
<tr>
<td>3</td>
<td>Martin Kempinsky</td>
<td>153</td>
<td>
<a class="btn btn-primary" href="#">Edit</a>
</td>
</tr>
</tbody>
</table>
解决方案
你可以加:
columnDefs: [
{ searchable: false, targets: 3 }
],
示例中的代码如下: //target 是列数
$('.datatable').DataTable({
lengthMenu: [
[15, 25, 50, -1],
[15, 25, 50, "All"]
],columnDefs: [
{ searchable: false, targets: 3 }
],
pageLength: 25,
dom: '<"html5buttons"B>lTfgitp',
aaSorting: [],
buttons: [{
extend: 'copy',
exportOptions: {
columns: ':not(.ignore)',
}
推荐阅读
- powershell - 用于在 AD 中添加计算机的 Powershell 脚本
- javascript - 为什么我的函数在自己调用时可以工作,而当我用另一个函数调用它时却不行?(初学者javascript问题)
- firebase - signWithCustomMethod 错误 [无效的断言格式。需要 3 个点分隔段。]
- python - 如何在 django html 文件中声明变量。不从任何角度通过。我也更新了那个变量
- javascript - VBA如何在Javascript中以选定的术语对fireevent“on change”进行编码
- css - Font-Awesome 使用 CSS Pseudo After 显示正方形而不是图标
- angular - 如何使用正则表达式获取文件扩展名?
- javascript - 如何在数组中设置[i]?
- java - 通过 CSS 在 JavaFX 中保持比例不变的边框大小?
- sql-server - 此版本不支持 Always On 高可用性连接命令