datatables:如何更改空格键上单元格的值?

时间:2015-07-04 09:45:32

标签: datatables

我想更改数据表中单元格的值。我们的想法是在按下焦点单元格上的空格键时在预设值之间切换。但我不知道如何实现这一点。

我正在以下列方式初始化DataTable。

var table = $('#data-table').DataTable();

var keys = new $.fn.dataTable.KeyTable( table );

有人有建议吗?

1 个答案:

答案 0 :(得分:1)

似乎KeyTables 2.0的文档尚未更新。我设法通过以下方式完成:

var table = $('#data-table').DataTable();
var keys = new $.fn.dataTable.KeyTable( table );

table.on( 'key', function ( e, datatable, key, cell, originalEvent ) {
    if (key == 32) { #32 for spacebar
        var currentStatus = cell.data();
        switch(currentStatus) {
            case 'p':
                cell.data('f');
                $(cell.node()).removeClass('status_p').addClass('status_f');
                break;
            case 'f':
                cell.data('h');
                $(cell.node()).removeClass('status_f').addClass('status_h');
                break;
            case 'h':
                cell.data('p');
                $(cell.node()).removeClass('status_h').addClass('status_p');
                break;
            default:
                cell.data('p');
                $(cell.node()).attr('class','').addClass('status_p');
        }
    }
});