带链接的可点击dataTable行。笨

问题描述 投票:0回答:1

我正在弄清楚如何在点击时添加一行,它会将用户重定向到一个页面。但我无法在互联网上找到如何做到这一点。这是我的代码。

调节器

public function ajax_list()
    {
        $list = $this->Infoserbilis_model->get_datatables();
        $data = array();
        $no = $_POST['start'];
        foreach ($list as $tblcontent) {
            $no++;
            $row = array();
            $row[] = $no;
            $row[] = $tblcontent->record_id;
            $row[] = $tblcontent->title;
            $row[] = $tblcontent->description;
            $row[] = $tblcontent->type_id;
            $row[] = $tblcontent->date_input;
            $row[] = $tblcontent->encoded_by;
            $row[] = $tblcontent->updated_by;
            $row[] = $tblcontent->keywords;
            $row[] = $tblcontent->broadclass_id;
            $row[] = $tblcontent->agency_id;
            $row[] = $tblcontent->contact_id;
            $row[] = $tblcontent->approved;
            $row[] = $tblcontent->approved_by;
            $data[] = $row;
        }
    }

这是我的观点

<table>
                <tr>
                    <th>id</th>
                    <th>Record ID</th>
                    <th>Title</th>
                    <th>Description</th>
                    <th>Type</th>
                    <th>Encoded By</th>
                    <th>Updated By</th>
                    <th>Keywords</th>
                    <th>Broad Class</th>
                    <th>Agency</th>
                    <th>Contact</th>
                    <th>Approved?</th>
                    <th>Approved By</th>
                </tr>
        </table>
<script type="text/javascript">  
var table; 
$(document).ready(function() {
    table = $('#table').DataTable({ 
        "responsive": true,
        "processing": true, 
        "serverSide": true, 
        "order": [], 
        "ajax": {
            "url": "<?php echo site_url('Infoserbilis/ajax_list')?>",
            "type": "POST"
        },
        "columnDefs": [
        { 
            "targets": [ 0 ],
            "orderable": false, 
        },
        ],
    });
});
</script>

请帮我添加另一列,其中所有内容只是按钮/链接。提前致谢。

php jquery codeigniter datatables
1个回答
0
投票

做这样的事情

    datatbl = $('.datatable').dataTable({
        stateSave: true,
        processing: true,
        serverSide: true,
        searchDelay: 500,
        ajax: {
            url: site_url('url'),
            type: "POST"
        },
        order: [[ 0, "desc" ]],
        columns: [
            { data: "data.data_id", className : 'data_id'},
            { data : "data.data_id", className: "action", orderable: false,searchable: false}
        ],
        fnRowCallback : process_row,
    });
    function process_row( nRow, aData, iDisplayIndex ) {
        var oSettings = datatbl.fnSettings();
        data_id = $('td.data_id', nRow).html();
        $('td.data_id', nRow).html(oSettings._iDisplayStart+iDisplayIndex +1);


        $('td.action', nRow).html(
            "<a href='"+site_url('url/view/'+data_id)+"' class='btn btn-xs btn-rm'><i class='fa fa-eye'></i> View</a> "
            +
            "<a href='"+site_url('url/edit/'+data_id)+"' class='btn btn-xs btn-rm'><i class='fa fa-pencil fa-fw'></i>Edit</a> "
        );
        return nRow;
    }
© www.soinside.com 2019 - 2024. All rights reserved.