首页 > 解决方案 > 将 SumoSelect 与数据表一起使用

问题描述

当前尝试将 SumoSelect 多选与数据表过滤器一起使用。

请参阅下面的数据表代码以及 sumoselect;

$(document).ready(function() {
$('#table-tasks').DataTable( {
"dom":' <"search"f><"top"l>rt<"bottom"ip><"clear">',
'ordering': false,
'iDisplayLength': 25,
    initComplete: function () {
        var api = this.api();

        api.columns([1, 2, 3, 4, 5, 6, 7, 8]).indexes().flatten().each( function ( i ) {
            var column = api.column( i );
            var title = $('#table-tasks thead th').eq(i).text();
            var select = $('<select multiple="multiple"><option value="">'+title+'</option></select>')
                .appendTo( $(column.header()).empty() )
                .on( 'change', function () {
                    var val = $.fn.dataTable.util.escapeRegex(
                        $(this).val()
                    );

                    column
                        .search( val ? '^'+val+'$' : '', true, false )
                        .draw();
                } ).on("click", function(e){
                  e.stopPropagation();
                });

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

$(document).ready(function () {
$('select').SumoSelect({
    placeholder: 'Placeholder',
    });
});

似乎无法将所选值传递到数据表过滤器中。对此的所有帮助表示赞赏。

CodePen:https ://codepen.io/-Regex/pen/dyPvNXZ

标签: jqueryhtmldjango

解决方案


推荐阅读