-1

並べ替えに .dataTable を使用しようとしていますが、 href タグを使用した数値を保持する列を除いて、正常に動作します。タグがなくてもソートは正常に機能しますが、タグを使用すると文字列としてソートされるようです:

1
2
3
11
14
21

になります:

1
11
14
2
21
etc.

これはコードです:

        $('#datatableme').dataTable({
            "aaSorting": [[0, "desc"]],
            "aoColumns": [
                         null,
                         null,
                         null,
                         null,
                         null,
                         null,
                         null
                     ],
            "sPaginationType": "full_numbers",
            "bPaginate": true,
            "bLengthChange": false,
            "bFilter": false,
            "bSort": true,
            "bInfo": true,
            "bAutoWidth": true,
            "iDisplayLength": 40,
            "bStateSave": false
        });

誰でも私を助けることができますか?

4

5 に答える 5

1

2つのオプション。

  1. ここにあるカスタムソートプラグインを使用してください: http://datatables.net/plug-ins/sortingこれにより、「数字付きのhtml」のソートタイプを定義できます。これにより、htmlタグが削除され、残りのデータが数値ではなく数値でソートされます。文字列より

  2. 列の横にゴースト/ダミー列を作成し、列定義で非表示に設定してから、「iDataSort」を使用して、表示列の並べ替えボタンをクリックしたときに、この「非表示」列で並べ替えを行うように指定します。

于 2013-09-09T13:10:13.997 に答える
1

sTypeリスト内のいずれかの列のパラメーターを に設定する必要がありますhtml。このようなもの:

"aoColumns": [
    { "sType": "html" },
    null,
    null,
    null,
    null,
    null,
    null
],

これは、セル内の HTML が並べ替え関数で無視されることを意味します。

以下は、 DataTables のドキュメントからの実際の例です。

于 2013-09-09T13:07:57.200 に答える
0

DataTables は、テーブルに含まれるデータ型を自動的に検出しようとするため、このデータを正確に並べ替えてフィルター処理できます。

DataTables 1.7 より前では、HTML タイプは自動的に検出されず、列の sType を指定する必要があったことに注意してください。

これはあなたを助けるかもしれません

http://www.datatables.net/release-datatables/examples/advanced_init/html_sort.html

于 2013-09-09T13:13:34.940 に答える