{hero}

eq()

自:DataTables 1.10 起

將 Api 實例縮減為單一上下文和結果集。

描述

DataTables API 旨在於單一 API 實例中處理多個表格(上下文),這通常很有用,但有時您可能只想處理單一表格,並從它帶來的簡化複雜性中獲益(純量而非向量)。

API 的選擇器方法都將以 2D 陣列格式提供其結果集,其中外部陣列用於識別上下文中的每個表格,而內部陣列則包含該表格從選擇器返回的結果。您可以根據需要輕鬆地迴圈遍歷每個表格,但如果您僅使用單一表格,則可以使用此方法將 API 實例縮減為僅限於相關表格。

作為一個說明性的範例,rows() 方法將返回上述的 2D 陣列格式,其中內部陣列資料包含選取的列索引。對於單一表格的簡單操作,我們只需要一個包含選取列索引的 1D 陣列,並且將 API 實例的上下文設定為相關表格。這正是 eq() 方法所提供的功能。

請注意,此方法最初可能看起來與 get() 方法類似,但這兩個方法提供的功能略有不同

  • eq() 從引用多個表格的 API 實例中選取特定的 DataTable。
  • get() 從 API 實例取得資料。

類型

function eq( idx )

描述

根據給定的索引,將 API 實例縮減為單一上下文和結果集。這對於簡化與 API 的某些互動很有幫助。

參數
傳回

新的 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();
	});

相關

以下選項直接相關,在您的應用程式開發中也可能很有用。