2016-12-27 2 views
0

ли мы иметь возможность в DataTable, где можно получить столбец из значения другого столбца:Initialise JQuery DataTable с данными JSON и производные столбцы

Мой текущий код:

customerDataTable = $('#datatable_tabletools').dataTable({ 
      "bDeferRender": true, 
      "aaData" : customerData, 
      "aoColumns" : [{"mDataProp":"id"},{"mDataProp":"card_id"},{"mDataProp":"points"},{"mDataProp":"name"},{"mDataProp":"ref"},{"mDataProp":"refs"},{"mDataProp":"address"},{"mDataProp":"mob"},{"mDataProp":"ref_mob"},{"mDataProp":"profile"},{"mDataProp":"vitems"},{"mDataProp":"edit"},{"mDataProp":"del"},{"mDataProp":"bills"},{"mDataProp":"account"}], 
      /*"columnDefs" : [{orderable:false,targets : [0,1,2,3,4,5,6]},{searchable:false,targets:[2,3,4,5,6,7]}],*/ 
      "sDom" : "<'dt-top-row'Tlf>r<'dt-wrapper't><'dt-row dt-bottom-row'<'row'<'col-sm-6'i><'col-sm-6 text-right'p>>", 
      "oTableTools" : { 
       "aButtons" : ["copy", "print", { 
        "sExtends" : "collection", 
        "sButtonText" : 'Save <span class="caret" />', 
        "aButtons" : ["csv", "xls", "pdf"] 
       }], 
       "sSwfPath" : "<?=$baseUrl?>static/js/plugin/datatables/media/swf/copy_csv_xls_pdf.swf" 
      }, 
      "iDisplayLength": 100, 
      "fnInitComplete" : function(oSettings, json) { 
       $(this).closest('#dt_table_tools_wrapper').find('.DTTT.btn-group').addClass('table_tools_group').children('a.btn').each(function() { 
        $(this).addClass('btn-sm btn-default'); 
       }); 
      } 
     }); 

Если у меня есть данные колонки «идентификатор» в формате JSON, можно ли использовать его для определения столбцов в поле ниже образом:

"aoColumns" : [{"mDataProp":"id"},{"mDataProp":"<button onclick='editRecord({id})'>Edit</button>"}], 

в настоящее время я манипулировал JSON, чтобы добавить новое поле редактирования, производное от идентификатора, это может быть сделано throu Г.Х. DataTable определение

ответ

0

пытаются использовать этот способ:

"aoColumns" : [ 
     {"mDataProp":"id"}, 
     {"mDataProp":"<button onclick='editRecord({id})'>Edit</button>", 
     "fnRender": function (oObj) { 
      if (oObj.aData[0] == "1") // its containg your Id 
      { return '<button onclick="editRecord({'+oObj.aData[0]+'})">Edit</button>';} 
     } 
    ],