Как передать параметр из события JavaScript onClick между 2 DataTables - PullRequest
0 голосов
/ 06 октября 2019

I hava 2 DataTables: первая называется «Транзакция», а вторая - «Детальная транзакция». Идея очень проста. Я хочу передать переменную, когда я нажимаю «кнопку детализации» в транзакции, чтобы я мог получить детализацию соответственно. Кнопка «Подробности» содержит «идентификатор транзакции», который используется для запуска «Детали транзакции».

Мой Javascript

//DataTables that shows "Transaction" list
var table = $('.data-table').DataTable({
    processing: true,
    serverSide: false,

    order: [[ 0, "desc" ]],
    ajax: "{{ route('sppd.showdata') }}",
    columns: [

        {data: 'id_transaksi', name: 'id_transaksi', 'visible': true},
        {data: 'tgl_berangkat', name: 'tgl_berangkat'},
        {data: 'tgl_pulang', name: 'tgl_pulang'},
        {data: 'keperluan', name: 'keperluan'},
        {data: 'jml_personil', name: 'jml_personil'},
        {data: 'lokasi', name: 'lokasi'},
        {data: 'action', name: 'action', orderable: false, searchable: false},
    ]
});

//Button event that should trigger another DataTables to show data
$('body').on('click', '.detailPersonil', function(){

//I need this ID to be passed to Datatable bellow 
var id_transaksi = $(this).data('id'); 
console.log(id_transaksi);

});

//DataTable that shows detail transaction
$('.detail_transaksi').DataTable({
    processing: true,
    serverSide: false,
    order: [[ 0, "desc" ]],
    ajax: 'sppd/'+2+'/detail_transaksi', //I want to POST ID here everytime I click the "detail button"
    columns: [

        {data: 'id', name: 'id', 'visible': true},             
        {data: 'id_transaksi', name: 'id_transaksi'},
        {data: 'nama_lengkap', name: 'nama_lengkap'},
        {data: 'nip', name: 'nip'},
        {data: 'pangkat', name: 'pangkat'},
        {data: 'ref_bag_id', name: 'ref_bag_id'},
        {data: 'action', name: 'action', orderable: false, searchable: false},
    ]

    });

Это мой контроллер

public function show_data(){

    $table = DB::table('sppd_tb_transaksi')
    ->select('sppd_tb_transaksi.id AS id_transaksi',
 'sppd_tb_transaksi.lokasi AS lokasi','sppd_tb_transaksi.tgl_berangkat',
 'sppd_tb_transaksi.tgl_pulang',  'sppd_tb_transaksi.jml_personil',
 'sppd_tb_transaksi.keperluan')
  ->get(); 

    return Datatables::of($table)
            ->addColumn('action', function($row){

                      $btn = '<a href="javascript:void(0)" data-toggle="tooltip"  data-id="'.$row->id_transaksi.'" data-original-title="Edit" class="btn btn-primary btn-sm editKegiatan" style="font-size:11px;"><i class="fa fa-edit"></i> Edit </a> <a href="javascript:void(0)" data-toggle="tooltip" data-id="'.$row->id_transaksi.'"class="btn btn-info btn-sm detailPersonil" style="font-size:11px;"><i class="fa-info-circle"></i>Detail</a>';

                       $btn = $btn.' <a href="javascript:void(0)" data-toggle="tooltip" data-id="'.$row->id_transaksi.'" class="btn btn-warning btn-sm printKegiatan" style="font-size:11px;"><i class="fa fa-print"></i> Print</a> <a href="javascript:void(0)" data-toggle="tooltip" data-id="'.$row->id_transaksi.'" data-original-title="Delete" class="btn btn-danger btn-sm deleteKegiatan" style="font-size:11px;"><i class="fa fa-trash"></i> Delete</a>';

                        return $btn;

                })->make(true);

}

Есть идеи? Пожалуйста, помогите мне, ребята

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...