Datatable: у меня есть два <tr>в thead, и 1 должен упорядочить всю таблицу, а другой <tr>должен выполнить выбор ввода - PullRequest
0 голосов
/ 05 декабря 2018

Моя проблема заключается в том, что для выбора таблицы используется входной сигнал <tr>, и каждый раз, когда я выбираю опцию, вся таблица данных сортируется для каждого щелчка в поле ввода выбора.На первом <tr> я хочу иметь <tr> с опцией сортировки, а другой <tr> должен просто сделать опцию выбора ввода.Кто-нибудь может помочь?

Javascript / Jquery / Datatables:

var table = $('#datatable').DataTable( {
    "orderable": false,
    initComplete: function () {

        this.api().columns().every( function () {
            var column = this;
            var select = $('<select><option value=""></option></select>')
                .appendTo( $(column.header()).empty() )
                .on( 'change', function () {
                    var val = $.fn.dataTable.util.escapeRegex(
                        $(this).val()
                    );

                    column
                        .search( val ? '^'+val+'$' : '', true, false )
                        .draw();
                } );

            column.data().unique().each( function ( d, j ) {
                select.append( '<option value="'+d+'">'+d+'</option>' );
            } );
        } );
    }
} );


table.on('draw', function () {
    table.columns().indexes().each( function ( idx ) {
        var select = $(table.column( idx ).header()).find('select');

        if ( select.val() === '' ) {
            select
                .empty()
                .append('<option value=""/>');

            table.column(idx, {search:'applied'}).data().unique().each( function ( d, j ) {
                select.append( '<option value="'+d+'">'+d+'</option>' );
            } );
        }
    } );
} );

Datatable выглядит следующим образом:

enter image description here

...