【发布时间】:2017-10-18 23:29:31
【问题描述】:
用 jsfiddle 更新:https://jsfiddle.net/pnnorhtg/
我有一个数据表,但在初始化“带有 html 的数字”数据表插件 https://datatables.net/plug-ins/sorting/num-html 时遇到了困难。
最初按“计数”DESC 排序。但是,一旦我执行修改html并将其附加到该列中每个单元格的函数,它就不再可排序。
根据我的研究,这个插件应该能够解决这个问题,但我没有运气。
这是我的数据:
var preHtmlData = [{
Brand: "Toyota",
Count: 33423,
GBV: 242445
}, {
Brand: "Ford",
Count: 23558,
GBV: 334343
}, {
Brand: "Honda",
Count: 9466,
GBV: 933455
}];
这是我的函数,它根据键将 html 文本添加到值中:
//adding text next to Count
function updateItemCount(preHtmlData) {
for(var key in preHtmlData) {
var value = preHtmlData[key];
console.log(value)
if (value.Brand == 'Toyota') {
value.Count = value.Count + ' <div style="font-size: 10px;margin-top: -5px">Toyota Purchases</div>';
} else if (value.Brand == 'Ford') {
value.Count = value.Count + ' <div style="font-size: 10px;margin-top: -5px">Ford Purchases</div>';
} else if (value.LOB == 'Honda') {
value.Count = value.Count + ' <div style="font-size: 10px;margin-top: -5px">Honda Purchases</div>';
}
}
}
这就是我初始化表的地方:
summary_data_table = $('#resultsTable').DataTable({
"bSort": true,
"destory": true,
"data": data,
"searching": false,
"paging": false,
"order": [
[aryJSONColTable.length - 1, "desc"]
],
"dom": '<"top">t<"bottom"><"clear">',
"columnDefs": aryJSONColTable,
[
{ type: 'natural-nohtml', targets: 5 }
]
"initComplete": function(settings, json) {
$("#resultsTable").show();
}
});
我已经根据文档添加了插件并构建了我的代码,我感觉它是我定义 columnDefs 的一些方式,但我需要它来执行 aryJSONColTable 和自然排序。
【问题讨论】:
-
错误的
"columnDefs": aryJSONColTable,似乎导致了这个问题
标签: javascript sorting datatables