此例子演示了以工作地点分组数据,同时隐藏工作地点这一列
Name | Position | Age | Start date | Salary |
---|---|---|---|---|
Name | Position | Age | Start date | Salary |
Edinburgh | ||||
Tiger Nixon | System Architect | 61 | 2011/04/25 | $320,800 |
Cedric Kelly | Senior Javascript Developer | 22 | 2012/03/29 | $433,060 |
New York | ||||
Brielle Williamson | Integration Specialist | 61 | 2012/12/02 | $372,000 |
San Francisco | ||||
Ashton Cox | Junior Technical Author | 66 | 2009/01/12 | $86,000 |
Herrod Chandler | Sales Assistant | 59 | 2012/08/06 | $137,500 |
Tokyo | ||||
Garrett Winters | Accountant | 63 | 2011/07/25 | $170,750 |
Airi Satou | Accountant | 33 | 2008/11/28 | $162,700 |
Airi Satou | Accountant | 33 | 2008/11/28 | $162,700 |
Airi Satou | Accountant | 33 | 2008/11/28 | $162,700 |
Airi Satou | Accountant | 33 | 2008/11/28 | $162,700 |
Airi Satou | Accountant | 33 | 2008/11/28 | $162,700 |
Airi Satou | Accountant | 33 | 2008/11/28 | $162,700 |
Airi Satou | Accountant | 33 | 2008/11/28 | $162,700 |
Airi Satou | Accountant | 33 | 2008/11/28 | $162,700 |
Airi Satou | Accountant | 33 | 2008/11/28 | $162,700 |
Airi Satou | Accountant | 33 | 2008/11/28 | $162,700 |
Airi Satou | Accountant | 33 | 2008/11/28 | $162,700 |
Airi Satou | Accountant | 33 | 2008/11/28 | $162,700 |
Airi Satou | Accountant | 33 | 2008/11/28 | $162,700 |
Airi Satou | Accountant | 33 | 2008/11/28 | $162,700 |
Airi Satou | Accountant | 33 | 2008/11/28 | $162,700 |
Airi Satou | Accountant | 33 | 2008/11/28 | $162,700 |
Airi Satou | Accountant | 33 | 2008/11/28 | $162,700 |
Airi Satou | Accountant | 33 | 2008/11/28 | $162,700 |
Airi Satou | Accountant | 33 | 2008/11/28 | $162,700 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | $(document).ready( function () { var table = $( '#example' ).DataTable({ "columnDefs" : [{ "visible" : false , "targets" : 2 }], "order" : [[2, 'asc' ]], "displayLength" : 25, "drawCallback" : function (settings) { var api = this .api(); var rows = api.rows({ page: 'current' }).nodes(); var last = null ; api.column(2, { page: 'current' }).data().each( function (group, i) { if (last !== group) { $(rows).eq(i).before( '<tr class="group"><td colspan="5">' + group + '</td></tr>' ); last = group; } }); } }); // 根据组排序 $( '#example tbody' ).on( 'click' , 'tr.group' , function () { var currentOrder = table.order()[0]; if (currentOrder[0] === 2 && currentOrder[1] === 'asc' ) { table.order([2, 'desc' ]).draw(); } else { table.order([2, 'asc' ]).draw(); } }); }); |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 | < table id = "example" class = "display" cellspacing = "0" width = "100%" > < thead > < tr > < th >Name</ th > < th >Position</ th > < th >Office</ th > < th >Age</ th > < th >Start date</ th > < th >Salary</ th > </ tr > </ thead > < tfoot > < tr > < th >Name</ th > < th >Position</ th > < th >Office</ th > < th >Age</ th > < th >Start date</ th > < th >Salary</ th > </ tr > </ tfoot > < tbody > < tr > < td >Tiger Nixon</ td > < td >System Architect</ td > < td >Edinburgh</ td > < td >61</ td > < td >2011/04/25</ td > < td >$320,800</ td > </ tr > < tr > < td >Garrett Winters</ td > < td >Accountant</ td > < td >Tokyo</ td > < td >63</ td > < td >2011/07/25</ td > < td >$170,750</ td > </ tr > < tr > < td >Ashton Cox</ td > < td >Junior Technical Author</ td > < td >San Francisco</ td > < td >66</ td > < td >2009/01/12</ td > < td >$86,000</ td > </ tr > < tr > < td >Cedric Kelly</ td > < td >Senior Javascript Developer</ td > < td >Edinburgh</ td > < td >22</ td > < td >2012/03/29</ td > < td >$433,060</ td > </ tr > < tr > < td >Airi Satou</ td > < td >Accountant</ td > < td >Tokyo</ td > < td >33</ td > < td >2008/11/28</ td > < td >$162,700</ td > </ tr > < tr > < td >Brielle Williamson</ td > < td >Integration Specialist</ td > < td >New York</ td > < td >61</ td > < td >2012/12/02</ td > < td >$372,000</ td > </ tr > < tr > < td >Herrod Chandler</ td > < td >Sales Assistant</ td > < td >San Francisco</ td > < td >59</ td > < td >2012/08/06</ td > < td >$137,500</ td > </ tr > </ tbody > </ table > |
http://datatables.net/examples/advanced_init/row_grouping.html
Translation from DataTables.net, with permission