0

我有一个小问题,我正在使用 DataTables,并且我在一列中有以下数据

1-2
3
4
5
6
7-8
9

等等。目前,这些被视为字符串,因此排序混乱。当我将它们的值更改为整数时,排序很好,但是,我丢失了信息,而不是显示 1-2,而是显示 1,而不是显示 7-8,而是显示 7,依此类推。

我想知道我是否可以有一个“显示”值和一个“排序值”。使它如此 DataTables 将其显示为字符串,但使用我已更改为整数的值进行排序。如果有人可以帮助我,那就太好了!

4

1 回答 1

1

该主题在 DataTable文档中进行了讨论。它涉及在您的其他 JavaScript 代码中包含自然排序插件,并将“sType”指定为“自然”:

<script type="text/javascript" src="jquery.dataTables.js"></script>
<script type="text/javascript" src="naturalSort.js"></script>
<script type="text/javascript">
    jQuery.fn.dataTableExt.oSort['natural-asc'] = function(a, b) {
        return naturalSort(a, b);
    };
    jQuery.fn.dataTableExt.oSort['natural-desc'] = function(a, b) {
        return naturalSort(a, b) * -1;
    };
    $(document).ready(function() {
        $('#example').dataTable( {
            "aoColumns": [
                null,
                null,
                { "sType": "natural" },
                null
            ]
        } );
    } );
</script>
于 2013-08-11T09:56:58.073 回答