我正在使用jquery datatable,我有一个列,该列当前显示的数量为十进制。我想一开始就附加$,并将逗号放在千位。例如。电流显示为:1526或1013.7
因此,它应显示为$ 1,526和$ 1,013.7
,但最重要的是,它不应该打破排序功能。
我正在使用的代码如下
第一个页面加载:
var requestTable =
$('#tblCustomerGrid')
.DataTable({
data: data,
"columnDefs": [
{
"targets": 0,
"data": "clientId",
"fnCreatedCell": function (nTd, sData, oData, iRow, iCol) {
$compile(nTd)($scope);
},
"orderable": false,
"searchable": false,
"render": function (data, type, full, meta) {
var hyperLink = "<a href='#' ng-click='$event.preventDefault(); OpenClientInfo(" + data + ")'>Get Client Details</a>";
return hyperLink; //'<a href="Index/' + data + '">' + data + '</a>';
}
},
{ "type": "num", "targets": 5 }
],
"columns": [
{ "data": "clientId" },
{ "data": "fullName" },
{ "data": "email" },
{ "data": "countryName" },
{ "data": "phone" },
{ "data": "grandTotal" }
],
"language": {
"lengthMenu": "_MENU_",
"thousands": ","
}
});
$('.panel-ctrls').append($('.dataTables_filter').addClass("pull-right")).find("label").addClass("panel-ctrls-center");
$('.panel-ctrls').append("<i class='separator'></i>");
$('.panel-ctrls').append($('.dataTables_length').addClass("pull-left")).find("label").addClass("panel-ctrls-center");
$('.panel-footer').append($(".dataTable+.row"));
$('.dataTables_paginate>ul.pagination').addClass("pull-right m-n");
$('.dataTables_filter input').attr("placeholder", "Search...");
然后单击按钮:
requestTable.clear();
requestTable.draw();
requestTable.rows.add(data);
requestTable.draw();
您可以看到我已经尝试了
"language": {
"lengthMenu": "_MENU_",
"thousands": ","
}
并提供类型{ "type": "num", "targets": 5 }
,但它们都没有工作
DataTables具有此
的构建INN函数 "columns": [
{ "data": "clientId" },
{ "data": "fullName" },
{ "data": "email" },
{ "data": "countryName" },
{ "data": "phone" },
{ "data": "grandTotal",
render: $.fn.dataTable.render.number( ',', '.', 2, '$' ) }
它还允许更多自定义
https://datatables.net/manual/data/renderers
在这里我们可以给多个列给格式
如果需要十进制(。
var ib_dt = $('#ib_dt').DataTable( {
"columnDefs": [
{ "orderable": false,
"render": $.fn.dataTable.render.number( ',', '.', 2, '$','' ),
"targets":[3,4,5],
}
],
});
如果需要十进制()和千分隔符(。)以及金额后(fr)位置的货币标志等格式,然后遵循
var ib_dt = $('#ib_dt').DataTable( {
"columnDefs": [
{ "orderable": false,
"render": $.fn.dataTable.render.number( '.', ',', 2, '','Fr' ),
"targets":[3,4,5],
}
],
});