1

Apex (Salesforce) で jQuery Table Sorter を使用しています。私は6列のテーブルをリストしており、そのうちの2つは入力フィールドです。テーブルは、Fire Fox、Chrome、IE 8 で完全にソートされますが、IE 9 だけでは奇妙な動作をします。実際、並べ替えは IE 9 でも機能します。しかし、一度でもソートしようとすると、すべての入力値が null に消去されます。助けてください!

4

1 に答える 1

1

入力値を使用して列をソートできるカスタム パーサーのデモをご覧ください。

動的入力値のソート

悲しいことに、このパーサーは元の tablesorter プラグインでは機能しませんが、私の github フォーク バージョンのtablesorter では機能します。

// add parser through the tablesorter addParser method
$.tablesorter.addParser({
  id: 'inputs',
  is: function(s) {
    return false;
  },
  format: function(s, table, cell, cellIndex) {
    var $c = $(cell);
     if (!$c.hasClass('updateInput')) {
      $c
      .addClass('updateInput')
      .bind('keyup', function() {
        $(table).trigger('updateCell', [cell, false]); // false to prevent resort
      });
    }
    return $c.find('input').val();
  },
  type: 'text'
});

$(function() {
  $('table').tablesorter({
     headers: {
      3: {
        sorter: 'inputs'
      }
    }
  });
});​
于 2012-04-24T03:46:32.460 に答える