如何在初始化之后更改DataTables的aLengthMenu

时间:2017-04-03 21:13:27

标签: jquery jquery-plugins datatables datatables-1.10

我有一个使用默认设置初始化的DataTable。但是,我想将值为[10,25,50,100]的默认aLengthMenu更改为我的自定义值。

经过一些研究,我发现使用Datatables的API可以完成。我还在stackoverflow上看了一些类似的方法,但似乎没有任何工作。

这是我尝试过的。我使用的是DataTable的1.10.x版本。

var table = $('#table').DataTable();
table.settings().context[0]._iDisplayLength  = 10;
table.settings().context[0].aLengthMenu = [[10, 25, 50, -1], [10, 25, 50, "All"]];
table.draw();

2 个答案:

答案 0 :(得分:1)

     try this: http://jsbin.com/moyonos/edit?js,output   


        $(document).ready(function () {
            $('#example').DataTable({pageLength:25,"lengthMenu": [ [10, 25, 50, -1], [10, 25, 50, "All"] ],
                data: someData.data,
                "columns": [
                { "data": "name" },
                { "data": "position" },
                { "data": "office" },
                { "data": "extn" },
                { "data": "start_date" },
                { "data": "salary" }

                                        ]
            });

             // name of table + "_length"
             var $sel =$("#example_length select");

            $sel.html("<option value='3'>3</option>");
            $sel.append("<option value='6'>6</option>");
            $sel.append("<option value='9'>9</option>");
            $sel.append("<option value='12'>12</option>");
            $sel.append("<option value='15'>15</option>");
            $sel.append("<option value='-1'>All</option>");

            $sel.trigger("change");
        });

答案 1 :(得分:0)

 $('#table').DataTable({
      pageLength:10,  
     "lengthMenu": [ [10, 25, 50, -1], [10, 25, 50, "All"] ]});

我在这里有一个工作示例:http://jsbin.com/dibuga/edit?html,css,js,output