eq()
自:DataTables 1.10 起
將 Api 實例縮減為單一上下文和結果集。
描述
DataTables API 旨在於單一 API 實例中處理多個表格(上下文),這通常很有用,但有時您可能只想處理單一表格,並從它帶來的簡化複雜性中獲益(純量而非向量)。
API 的選擇器方法都將以 2D 陣列格式提供其結果集,其中外部陣列用於識別上下文中的每個表格,而內部陣列則包含該表格從選擇器返回的結果。您可以根據需要輕鬆地迴圈遍歷每個表格,但如果您僅使用單一表格,則可以使用此方法將 API 實例縮減為僅限於相關表格。
作為一個說明性的範例,rows()
方法將返回上述的 2D 陣列格式,其中內部陣列資料包含選取的列索引。對於單一表格的簡單操作,我們只需要一個包含選取列索引的 1D 陣列,並且將 API 實例的上下文設定為相關表格。這正是 eq()
方法所提供的功能。
請注意,此方法最初可能看起來與 get()
方法類似,但這兩個方法提供的功能略有不同
類型
function eq( idx )
- 描述
根據給定的索引,將 API 實例縮減為單一上下文和結果集。這對於簡化與 API 的某些互動很有幫助。
- 參數
名稱 類型 選用 1 idx
否 要選取的索引
- 傳回
新的 DataTables API 實例,其上下文和結果集包含指定索引的表格和資料。如果沒有符合的上下文,則會傳回空的 API 實例。
範例
根據條件運算式,為列新增類別
var table = new DataTable('#myTable');
table
.rows()
.eq(0)
.each(function (idx) {
var row = table.row(idx);
if (row.data().grade === 'A') {
row
.node()
.to$()
.addClass('gradeA');
}
});
顯示表格中所有列的子列
var table = new DataTable('#myTable');
table
.rows()
.eq(0)
.each(function (idx) {
table.row(idx).child.show();
});
相關
以下選項直接相關,在您的應用程式開發中也可能很有用。