使用 Render 函數建立自訂選項

這是 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 'Low'; } else if (row.salary <= 800000) { return 'Medium'; } else { return 'High'; } } } ], 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 'Low'; } else if (row.salary <= 800000) { return 'Medium'; } else { return 'High'; } } } ], layout: { top1: { searchPanes: { columns: [5] } } } });

除了上述程式碼外,還載入了以下 Javascript 程式庫檔案以供此範例使用

    以下顯示的 HTML 是原始的 HTML 表格元素,在 DataTables 增強之前

    此範例使用了一些額外的 CSS(超出從程式庫檔案載入的 CSS)來正確顯示表格。 以下顯示了所使用的額外 CSS

    以下 CSS 程式庫檔案已載入以供此範例使用,以提供表格的樣式

      此表格透過 Ajax 載入資料。 以下顯示已載入的最新資料。 當載入任何其他資料時,此資料將會自動更新。

      以下顯示用於執行此表格伺服器端處理的腳本。 請注意,這只是一個使用 PHP 的範例腳本。伺服器端處理腳本可以使用任何語言編寫,使用 DataTables 文件中描述的協定

      其他範例