0

テーブルソーターの動作をオーバーライドしようとしていますが、指示に従っていません。

determineSorting列のソート方法を決定する関数です。ある列から別の列をクリックすると、その列が ASC で並べ替えられます。そうしないと、ソートが逆になります。この関数が正しい値を返すと仮定します。

tableSort_clickテーブルをソートすることになっています。columnIndex正しい値をsortIndex持っていますが、何らかの理由でトリガーが間違っています。別の列に移動すると、その列は DESC でソートされます。ただし、その列の連続したクリックは正しいです。DESC の場合、ASC になります。

不適切な動作の理由は何ですか? tablesorter のデフォルトの並べ替えをオーバーライドできない可能性がありますか?

 $('#sortable-table').tablesorter();

 $("#sortable-table th").click(tableSort_click);

function tableSort_click() {

    var sortInfo = determineSorting(this.id);

    var columnId = sortInfo.elemId;
    var sortOrder = sortInfo.sortOrder;

    if (columnId && sortOrder) {
        var columnIndex = $("#" + columnId).index();

        // determine sort index
        var sortIndex = -1;
        if ("asc" == sortOrder) {
            sortIndex = 0;
        } else if ("desc" == sortOrder) {
            sortIndex = 1;
        }

        // sort table
        if (sortIndex > -1) {
            var sorting = [[columnIndex, sortIndex]];
            $('#assign-measures').trigger("sorton",[sorting]);
        }
    }
}
4

0 に答える 0