jQuery DataTables sorting is not working

吃可爱长大的小学妹 提交于 2019-12-11 23:47:27

问题


Using jQuery 2.1.3 and DataTables 1.10.5, my table won't sort when I click on the up- and down-arrows above the columns. From what I can tell from the documentation, this is the simplest example, and should work. I can't seem to figure out why it isn't.

My HTML/JavaScript

<!doctype html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">

        <title>Simple Example</title>

        <link rel="stylesheet" media="screen" href="/assets/css/bootstrap.min.css">
        <link rel="stylesheet" media="screen" href="/assets/css/bootstrap-theme.min.css">
        <link rel="stylesheet" media="screen" href="/assets/css/jquery.dataTables.css">
    </head>
    <body>
        <table id="table-guid" class="display compact" cellspacing="0" width="100%">
            <thead>
                <tr>
                    <th>Column-1</th>
                    <th>Column-2</th>
                    <th>Column-3</th>
                </tr>
            </thead>

            <tfoot>
                <tr>
                    <th>Column-1</th>
                    <th>Column-2</th>
                    <th>Column-3</th>
                </tr>
            </tfoot>
            <tbody>
                <tr id="A">
                    <td>A-1</td>
                    <td>A-2</td>
                    <td>A-3</td>
                </tr>
                <tr id="B">
                    <td>B-1</td>
                    <td>B-2</td>
                    <td>B-3</td>
                </tr>
                <tr id="C">
                    <td>C-1</td>
                    <td>C-2</td>
                    <td>C-3</td>
                </tr>
            </tbody>
        </table>

        <script src="/assets/js/jquery-2.1.3.min.js"></script>
        <script src="/assets/js/bootstrap.min.js"></script>
        <script src="/assets/js/jquery.dataTables.min.js"></script>
        <script>
        $(document).ready(function ()
        {
            var table = $('#table-guid').DataTable();
        });
        </script>
    </body>
</html>

回答1:


You have to define the type of your column data. The problem here is coming from the hyphen it seems, it is working without it

Solution : JsFiddle

$('#table-guid').dataTable( {
    "columnDefs": [
        { "type": "numeric-comma", targets: "_all" }
    ]
});

Here is the documentation



来源:https://stackoverflow.com/questions/28862456/jquery-datatables-sorting-is-not-working

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!