1

tablesorterを使用して列をクラスで並べ替えようとしています。クラスは、true/falseを示すために背景画像を決定します。

列内の2つのタイプのクラスは次のようになります。

<td class='icon silk-cross'>
<td class='icon silk-tick'>

私はこのコードをカスタムパーサーとして試しましたが、実用的な解決策を思いつきませんでした。

  $.tablesorter.addParser({
    id: 'truefalse',
    is: function(s) {
      return false;
    },
    format: function(s, table, cell) {
      var $cell = $(cell);
      return $cell.attr('class') || s;
    },
    type: 'text'
  });

各セルの属性にアクセスする方法はありますか?

編集:http: //jsfiddle.net/LtyMN/のjsfiddle

4

2 に答える 2

4

headersオプション(デモ)に新しいパーサーを含める必要があります。

$.tablesorter.addParser({
    id: 'truefalse',
    is: function (s) {
        return false;
    },
    format: function (s, table, cell) {
        var $cell = $(cell);
        return $cell.attr('class') || s;
    },
    type: 'text'
});

$("table").tablesorter({
    headers : {
        2: { sorter: 'truefalse' }
    },
    widgets: ['zebra']
});

updateCellこのメソッドを使用するcellと、パーサー形式関数に引数が適切に提供されないことに注意してください。tablesorterのフォークでこの問題を修正しました。

于 2013-03-14T15:30:58.393 に答える
0

これが役立つかもしれません。

   $("#myTable").tablesorter( {sortList: [[0,0], [1,0]]} ); 

ソートされる任意のth(ヘッド)をクリックします:)

同じためのフィドル: フィドル1

私はこれがうまくいくことを願っています

表示されている番号なし: フィドル2

楽しみ :)

于 2013-03-13T04:58:21.133 に答える