使用呈现函数创建自定义选项

这是适用于 DataTables 的 searchPanes 扩展。它允许基于列的值对结果进行过滤。

此示例演示了针对呈现的数据进行搜索。将 searchPanes.columns 属性设置为 5,以便仅将薪资列显示为面板。

姓名 职位 办公室 分机号 开始日期 薪资
姓名 职位 办公室 分机号 开始日期 薪资
  • Javascript
  • HTML
  • CSS
  • Ajax
  • 服务器端脚本
  • 评论

下面显示的 Javascript 用于初始化本示例中显示的表格

$('#example').DataTable({ ajax: '../resources/objects.json', columnDefs: [ { searchPanes: { show: true }, targets: [5] } ], columns: [ { data: null, render: function (data, type, row) { // 将名字和姓氏合并为一个表格字段 return data.first_name + ' ' + data.last_name; } }, { data: 'position' }, { data: 'office' }, { data: 'extn' }, { data: 'start_date' }, { data: 'salary', render: function (data, type, row) { if (type === 'sort' || type === 'type') { return row.salary; } if (row.salary <= 200000) { return '低'; } else if (row.salary <= 800000) { return '中等'; } else { return '高'; } } } ], layout: { top1: { searchPanes: { columns: [5] } } } });
new DataTable('#example', { ajax: '../resources/objects.json', columnDefs: [ { searchPanes: { show: true }, targets: [5] } ], columns: [ { data: null, render: function (data, type, row) { // 将名字和姓氏合并为一个表格字段 return data.first_name + ' ' + data.last_name; } }, { data: 'position' }, { data: 'office' }, { data: 'extn' }, { data: 'start_date' }, { data: 'salary', render: function (data, type, row) { if (type === 'sort' || type === 'type') { return row.salary; } if (row.salary <= 200000) { return '低'; } else if (row.salary <= 800000) { return '中等'; } else { return '高'; } } } ], layout: { top1: { searchPanes: { columns: [5] } } } });

除了上述代码外,还加载了以下 Javascript 库文件以用于此示例

    下面显示的 HTML 是原始 HTML 表格元素,它尚未通过 DataTables 进行优化

    此示例使用了库文件(如下所示)之外的少量附加 CSS,以便正确显示表格。下面显示了所使用的附加 CSS

    加载以下 CSS 库文件,以便在示例中使用其为表格提供样式

      此表通过 Ajax 加载数据。最新加载的数据显示在下方。此数据会随着加载任何其他数据自动更新。

      用于对该表执行服务器端处理的脚本如下所示。请注意,这只是一个使用 PHP 的脚本示例。服务器端处理脚本可以用任何语言编写,使用DataTables 文档中描述的协议

      其他示例