gpt4 book ai didi

javascript - 数据表的显式排序

转载 作者:行者123 更新时间:2023-12-03 09:31:59 25 4
gpt4 key购买 nike

我的数据表中有一个列包含状态信息(即非常好、好、还可以、坏、非常坏),我想按状态排序,而不是按字母顺序排序。我该怎么做?

我刚刚编造了这个属性,但是有类似的东西吗?

$("#myTable").DataTable({
"sortArray": ['very good', 'good', 'ok', 'bad', 'very bad']
});

我确实浏览了数据表文档并发现 custom sorting ,但据我所知,它使用字母和数字等类型。

编辑:我无法使用 HTML5,因为它必须与 IE9 兼容。

最佳答案

解决方案 1

您可以使用columnDefstargets 选项和 columnDefs.render 中使用从零开始的索引来定位特定列在排序期间返回数值(type === 'sort')。 jQuery 辅助方法 $.inArray()用于根据提供的值返回数组索引。

$('#myTable').dataTable( {
"columnDefs": [
{
"targets": 0,
"render": function ( data, type, row, meta ) {
if(type === 'sort'){
var values = ['very good', 'good', 'ok', 'bad', 'very bad'];
data = $.inArray(data, values);
}

return data;
}
}
]
} );
<小时/>

解决方案2

替代解决方案是使用 data- 属性,如HTML5 data-* attributes所示例子。

如果您有静态 HTML 数据,您可以创建如下所示的行,然后 jQuery DataTables 选取 data- 属性并使用它们进行搜索。

<tr>
<td>T. Nixon</td>
<td>System Architect</td>
<td data-order="1">very good</td>
</tr>
<tr>
<td>T. Nixon</td>
<td>System Architect</td>
<td data-order="2">good</td>
</tr>

关于javascript - 数据表的显式排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31478186/

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