1

2 番目の列で並べ替えるテーブルがあります。デフォルトでは 8 つの列があり、行は追加するものの数によって異なります。

標準の8列がある場合はソートが機能しますが、チェックボックスをマークして保存すると、テーブルでより多くの情報が動的に生成されることを示し、ソートが機能しなくなります。

コード:

  $.tablesorter.addParser({
                    id: 'input_text',
                    is: function (s) {
                        // return false so this parser is not auto detected  
                        return false;
                    },
                    format: function (s) {

                        return s;
                    },
                    type: 'text'
                });

                // Tablesorter
                if ($(".attendanceList tbody tr").length > 0) {
                    $(".attendanceList").tablesorter({ headers: { 1: { sorter: false },
                        2: { sorter: 'input_text' },
                        3: { sorter: false },
                        4: { sorter: false },
                        5: { sorter: false },
                        6: { sorter: false },
                        7: { sorter: false },
                        8: { sorter: false },
                        9: { sorter: false },
                        10: { sorter: false }
                    },
                        sortList: [[2, 0], [0, 0]]
                    });
                }

問題が何であるかを確認するためにfirebugを使用しましたが、「s」パラメーター(上記を確認)は常に空の文字列(「」)です。

ステップバイステップ:チェックボックスをマークして保存ボタンを押します。それが完了したら、ポップアップをトリガーしてテーブルを取得する別のボタンを押します。テーブルには10列ありますが、2番目の列は以前のようにソートを実行しなくなります。

私は何かを逃しましたか?tablesorter プラグインについて調べましたが、同様の問題を抱えている人は見つかりませんでした。

ありがとう!

4

2 に答える 2

0

動的に生成されたコンテンツを挿入したら、更新をトリガーするだけです。テーブルが " " クラスで識別されているように見えるattendanceListため、動的更新後のコマンドは次のようになります。

$(".attendanceList").trigger("update");
于 2013-07-16T13:16:50.717 に答える