嗨,有人请帮助解决以下问题。
我用来从用户那里获取动态列,基于我需要创建一个dataTable,我已经编写了下面的代码来读取列,我需要从一些列中应用渲染函数,这些列将显示代码值,请跟我分享一下如何做到这一点
function createDataTableColumns(ColumnsName)
{
var colum = ColumnsName.split(",");
$.each(colum, function (i, item) {
var operationColumns = new Object();
operationColumns.sTitle = item;
operationColumns.data = item;
operationColumns.push(operationColumn);
})
}
function fnCreateTable(Data, tableID) {
if ($.fn.dataTable.isDataTable('#' + tableID)) {
var table1 = $('#customRptTable').DataTable();
table1.destroy();
$('#' + tableID + 'tbody').unbind('click');
}
$("#divOperation").show();
debugger;
var tableLicense = $('#' + tableID).DataTable({
"data": Data,
"aoColumns": operationColumns,
"aaSorting": [],
"bAutoWidth": true,
"bPaginate": true,
"searching": false,
"sScrollX": "100%",
"sScrollXInner": "100%",
"scrollCollapse": true,
});
$("#divOperation").show();
};
答案 0 :(得分:0)
您可以定义列,并且可以使用渲染。 Target属性允许您定义要更改的列。你不需要循环,渲染函数参数本身就是目标列的每个值。
var tableLicense = $('#' + tableID).DataTable({
"data": Data,
"aoColumns": operationColumns,
"aaSorting": [],
"bAutoWidth": true,
"bPaginate": true,
"searching": false,
"sScrollX": "100%",
"sScrollXInner": "100%",
"scrollCollapse": true,
"columnDefs": [ {
"targets": 0,
"data": null, // Use the full data source object for the renderer's source
"render": function(data, type, full, meta){
// here call your method
}
} ]
});