鍵
自:KeyTable 2.0.0
已在表格上偵測到按鍵事件,且此事件未被 KeyTable 處理。
請注意 - 此屬性需要 DataTables 的 KeyTable 擴充功能。
描述
當最終使用者按下按鍵且符合以下條件時,KeyTable 會觸發此事件:
- KeyTable 已啟用 (
keys.enable()
和keys.disable()
) - DataTable 中的儲存格擁有焦點
- KeyTable 本身不處理按鍵事件 (例如,方向鍵將觸發焦點變更,且此事件不會被觸發)。
此事件從 KeyTable 本身監聽的 keydown
事件觸發。原始事件會作為事件處理程式的第四個參數傳入,允許觸發事件的 preventDefault
和 stopPropagation
方法,如果您希望觸發某些動作 (例如編輯儲存格的內容) 時,這會很有用。
類型
function function( e, datatable, key, cell, originalEvent )
- 參數
名稱 類型 選用 1 e
否 jQuery 事件物件
2 datatable
否 所選表格的 DataTable API 實例
3 鍵
否 整數
4 cell
否 包含擁有焦點的儲存格的 DataTables API 實例 (
cell()
)5 originalEvent
否 觸發此事件的原始按鍵事件
範例
當按下 Enter 鍵時,使用 Editor 觸發內嵌編輯。 請注意,可以使用 keys.editor
選項來提供類似的介面。
var table = new DataTable('#myTable', {
keys: true
});
table.on('key', function (e, datatable, key, cell, originalEvent) {
if (key === 13) {
// return
// timeout needed to let inline initialise
setTimeout(function () {
editor
.one('close', function () {
table.keys.enable();
})
.inline(cell.node());
}, 100);
table.keys.disable();
}
});
相關
以下選項直接相關,並且在您的應用程式開發中可能也會很有用。