DataTable共通API


1.datatablesの初期化
myTable=$('.table-sort').DataTable({
    serverSide: true,//        
    processing: true,//      
    pageLength: 100,//        
    lengthChange: true,//          
    lengthMenu: [10,50,100,150,300,500,1000,5000],//           
    ordering: true,//    
    bStateSave: true,//    
    searching:true,//    
    language: {
        search: "  : "//      
    },
    ajax: {
        url: '      ',
        type: 'POST',//    
        data: {
                  :   
        }
    },
    fnCreatedRow: function(nRow, aData, iDataIndex) {
        $(nRow).addClass('text-c');//      
    },
    columns: [
        {
            data:'   ',
            className:‘      ’,
            render: function ( data, type, row ) {
                //         return  
                return data;
            }
        },
    ]
})

2.ajaxを使用してバックグラウンドからデータを取得し、カスタムパラメータを携帯する
    myTable.DataTables({
            serverSide: true,
            ajax: {
                url: '      ',
                type: 'POST',//    
                data: {
                          :   
                }
            },
        }).on('preXhr.dt', function ( e, settings, data ) {
            myTable.settings().ajax.params().      =   
        })

3.表示番号
    myTable.on( 'draw', function () {
        myTable.column(          ).nodes().each(function(cell,i){  
            i = i + 1;  
            var page = myTable.page.info();  
            var pageno = page.page;  
            var length = page.length;  
            var columnIndex = (i+pageno*length);  
            cell.innerHTML = columnIndex;  
        });
    })

4.datatableを使用して隣接行の同じデータを連結するセルdatabaleを使用する場合、同じ値のセルを連結したいが、ネット上では多くの方法が見つからない.そこで自分でこのセグメントコードをテストして作成しました.
    $('#id).DataTable().on( 'draw', function () {
        var rows = [],nodes = myTable.column(         ).nodes();
        nodes.each(function(cell,i){
            if(i != 0) {
                if($(cell).text() == $(nodes[i-1]).text()) {
                    var row = rows.pop();
                    rows.push({
                        cell: cell,
                        rowspan: row.rowspan+1,
                    });
                } else {
                    rows.push({
                        cell : cell,
                        rowspan: 1,
                    });
                }
            } else {
                rows.push({
                    cell : cell,
                    rowspan: 1,
                });
            }
        });
        var index = 0;
        $(rows).each(function(cell,item){
            $(nodes[index]).attr('rowspan',item.rowspan);
            for(var i = 1; i

5.ウィンドウのサイズ変更後に自動的にサイズ変更
    $(window).resize(function(){
        $('.table-sort').css('width','100%') //            ,     js         
        myTable.columns.adjust().draw();
    });