search.fixed()
取得/設定要套用至表格的具名搜尋。
描述
此方法提供將「固定」搜尋套用至 DataTable 的功能。它們也可能被稱為黏性或具名搜尋。與標準搜尋詞的主要區別在於,固定搜尋不會立即被下一個套用的搜尋詞取代。它會持續套用至表格,直到被名稱取代或刪除。
當您想要分層搜尋時,固定搜尋詞特別有用 - 例如,新增多個搜尋詞,並讓表格顯示累積結果。
這個介面通常預期由開發人員用來建立 DataTables 的自訂搜尋介面。
請注意,此方法僅設定要套用至表格的固定搜尋 - 它實際上並未執行搜尋。為了執行搜尋並顯示結果,請使用 draw()
方法,它可以簡單地作為此方法的鏈式方法呼叫。
當使用伺服器端處理時,必須在伺服器端新增額外邏輯來處理固定搜尋詞。此外,無法使用函式進行搜尋,因為搜尋函式是基於客戶端的。
類型
function search.fixed( name, searchTerm )
- 描述
設定要套用至表格的搜尋詞,使用名稱來唯一識別它。
- 參數
名稱 類型 選填 1 name
否 給予搜尋詞的名稱,以便將來可以尋址。
2 輸入
否 要套用至表格的搜尋詞。
使用
null
作為此值以刪除現有的搜尋詞。如果給定為字串,它將使用 DataTables 的「智慧」搜尋套用至表格的搜尋 (請參閱
search()
)。如果使用正規表示式,請注意,正規表示式會套用至一個單一字串,其中包含所有可搜尋欄位的搜尋資料 (以雙空格連接)。
如果使用函式,則會針對每一列呼叫該函式,並傳入三個參數:
- 表格中所有可搜尋欄位的資料搜尋字串
- 該列的原始資料物件
- 該列的資料索引
應傳回布林值:
true
表示保留該列,false
表示篩除該列。- 傳回
DataTables API 實例
範例
取得目前搜尋名稱的陣列
let table = new DataTable('#myTable');
let searches = table.search.fixed().toArray();
取得預期的搜尋詞
let search = table.search.fixed('mySearch');
套用搜尋字串
table.search.fixed('myString', 'Paris');
套用搜尋正規表示式
table.search.fixed('myRegex', /l.*n/i);
套用搜尋函式
table.search.fixed('myFunc', (row, data) => {
return row.includes('New York');
});
刪除現有的搜尋詞
table.search.fixed('mySearch', null);
相關
以下選項直接相關,也可能在您的應用程式開發中很有用。