jquery - 设置数据表长度菜单的自定义位置

标签 jquery datatables bootstrap-4 material-design datatables-1.10

我正在为我的项目使用数据表。

我想为我的过滤器、分页和搜索选项设置自定义位置。 我正在使用Material MDB Pro对于我的 CSS。

现在我想将长度菜单放置在表格下方,如下图所示。

I want it like this

所以我尝试使用这段代码:

$('#example').DataTable( {
        "dom": '<"top"i>rt<"bottom"flp><"clear">'
    } );

但这会让一切都崩溃。甚至搜索!我想将“搜索”和“导出”按钮保留在顶部,仅将分页和长度菜单保留在下方。

我的代码是:

$(document).ready(function () {
  var table = $('#dtMaterialDesignExample').DataTable({
    "lengthMenu": [[5,10, 25, 50, -1], [5,10, 25, 50, "All"]],
      dom: 'Blfrtip',
      fixedHeader: true,
        buttons: [
            {
                extend: 'csvHtml5',
                title: 'bizRTC CDR <?php date('d-m-Y'); ?>',
                 customize: function (csv) {
                     return "Enjoy the file"+csv;
                  },
                   className: 'btn btn-outline-primary waves-effect space',
            },
            {
            extend: 'pdfHtml5',
            title: 'CDR <?php echo date('d-m-Y'); ?>',
            customize: function ( doc ) {
                            doc.content.splice( 0, 0, {
                                text: "bizRTC CDR"
                            } );
            },
            className: 'btn btn-outline-primary waves-effect space',
            },
            {
                extend: 'excelHtml5',

                title: 'bizRTC CDR <?php date('d-m-Y'); ?>',
                message: "Call Records",
                className: 'btn btn-outline-primary waves-effect space',


            },
        ],

      responsive: {
            details: {
                display: $.fn.dataTable.Responsive.display.modal( {
                    header: function ( row ) {
                        var data = row.data();
                        return 'Details for '+data[0]+' '+data[1];
                    }
                } ),
                renderer: $.fn.dataTable.Responsive.renderer.tableAll( {
                    tableClass: 'table'
                } )
            }
        },
        "drawCallback": function () {
            $('.dataTables_paginate > .pagination').addClass('pagination pagination-circle pg-blue mb-0');
        }
});

编辑 1:

在我的代码中添加以下内容后:

dom: '<"row"<"float-left"B><"float-right"f>><"row"<"float-left"i><"float-right"p>>rtlp',

Edited Code

最佳答案

试试这个:

它在左上角显示按钮,在右上角显示搜索,在左下角显示每页,在底部中间显示表格信息,在右下角显示分页。

enter image description here

对于 Bootstrap v3:

dom: '<"pull-left"B><"pull-right"f>rt<"row"<"col-sm-4"l><"col-sm-4"i><"col-sm-4"p>>'

对于 Bootstrap v4:

dom: '<"float-left"B><"float-right"f>rt<"row"<"col-sm-4"l><"col-sm-4"i><"col-sm-4"p>>'

Demo

关于jquery - 设置数据表长度菜单的自定义位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54396962/

相关文章:

javascript - JQuery bind() 导致的异常行为

javascript - 使用媒体查询来操纵 jquery Accordion

php - 如何像在一列中一样在数据表中显示 group_concat() 列?

javascript - 如何关闭 React Bootstrap Carousel 的自动播放?

css - 在右侧导航栏上移动一项

html - Bootstrap 4 固定顶部导航栏显示折叠并隐藏内容

javascript - window.innerHeight ie8替代品

javascript - jQuery ui 日期选择器在 Firefox 中不工作

javascript - 数据表的列数

javascript - DataTables循环遍历表并删除特定列中包含特定字符串的所有行