从数据表中的服务器端脚本添加计算列

时间:2016-08-10 12:22:26

标签: php jquery datatables

我在我的php代码中使用jQuery数据表。

我的服务器端服务器端处理脚本

$columns = array(
    array( 'db' => 'val1', 'dt' => 0 ),
    array( 'db' => 'val2',  'dt' => 1 ),
);

这里的问题是我如何得到另一个未绑定的列val3 其值为val1 + val2。

示例:

val1 val2 val3
1    2    3
3    5    8

这里val1和val2是数据库列,val3是计算列。

我现在被困在如何从服务器端脚本添加val3列。

感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

  1. 您需要从服务器端编写数据库查询以获取第3列。

  2. 客户端保留3列表代码(html)

    <table class="table results" border="1">
        <thead>
            <tr>
                <th>val1</th>
                <th>val2</th>
                <th>val3</th>
            </tr>
        </thead>
    </table>
    
  3. 客户端定义3列(jquery datatable)

    results= $(".results").dataTable({
        aLengthMenu: [ [10, 25, 50, 100, 150, "-1"], [10, 25, 50, 100, 150, "All"] ],
        iDisplayLength: 10,
        searching: true,
        "aaSorting": [],
        "order": [[ 0, "desc" ]],
        "sPaginationType": "full_numbers",
    
        "bProcessing": true,
        "serverSide": true,
        "bDestroy": true,
        "cache": false,
        "sAjaxSource": "<?php echo $serverside_php; ?>",
    
        "sDom": 'T<>lfrtip',
        "oTableTools": {
            "sRowSelect": "os",
            "aButtons": [ "select_all", "select_none" ]
        },
    
        "aoColumnDefs": [
            { "bSortable": false },
            { "data": "val1" },
            { "data": "val2" },
            { "data": "val3" },
        ],
    });
    
  4. 将服务器端响应数据提供给客户端数据表+ html