gpt4 book ai didi

javascript - Jquery Datatable 排序不适用于 html 元素

转载 作者:行者123 更新时间:2023-12-02 23:53:35 26 4
gpt4 key购买 nike

排序不适用于表格单元格中的 html 元素。

尝试将 aoColumnDefs 添加到其中。还用 'sType': 'html' 为列指定列数据,并且排序似乎不起作用。

附示例代码here (jsfiddle)

最佳答案

我之前在一些项目中遇到过这个问题,使用mRender()而不是fnCreatedCell()render 函数接收 type 作为第二个参数,您可以从中检测渲染是针对 'display' 还是 'sort ' 除其他事项外。因此,如果类型为 'display',您可以返回 HTML,否则返回原始数据。

var data = [
["test", [20.2, "green"], "test"],
['test1', ['10.2', 'red'], "test"],
['test2', ['15.2', 'red'], "test"],
['test3', ['0', 'red'], "test"],
['test4', ['0.5', 'green'], "test"],
['test5', ['1.5', 'green'], "test"],
];

$(document).ready(function()
{
$('#data2').DataTable(
{
bSort: true,
aaData: data,
aaSorting: [[1, 'asc']],
aoColumnDefs: [
{
bSortable: true,
sType: "numeric",
aTargets: [1],
mRender: function(data, type)
{
if (type !== 'display')
return data[0];

return '<label style="color:' + data[1] + '">' + data[0] + '</label>';
},
}
]
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src=https://cdn.datatables.net/1.9.4/js/jquery.dataTables.min.js></script>
<link rel="stylesheet" href="https://cdn.datatables.net/1.9.4/css/jquery.dataTables.css">

<table id="data2" class="">
<thead>
<tr>
<th>col1</th>
<th>col2</th>
<th>col3</th>
</tr>
</thead>
</table>

关于javascript - Jquery Datatable 排序不适用于 html 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55527801/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com