質問

tablesorter この素晴らしい tablesorterフィルタープラグイン。

表のすべての列のリストを含む選択ボックスがページにあります。ユーザーが選択したときに、選択した列のみにフィルターを制限できるようにしたい。

これまでのように、選択ボックスにイベントを添付しました:

$('#SelectedColumn').bind("change", columnSelected);

次のようなハンドラーを使用:

function columnSelected() {
  var selected = $(this).val();
  $.tablesorterFilter.defaults.filterColumns = [selected];
}

これにより、フィルター列のデフォルト値が正しく設定されますが、フィルターが発生しても実際にはその値は使用されません。プラグインでは、構築時にのみフィルターされた列を設定できるようです。または、jquery newbinessは、フリップする必要があるデータのビットを取得する方法を理解できません。

役に立ちましたか?

解決

これにより、ブルートフォースのような方法で私が欲しかったものが手に入りました。より良い解決策を探しています。

function columnSelected() {
  var selected = $(this).val();
  $('#GoToTextBox').val('').focus();
  if (selected == 'Any') {
    $table.get(0).config.filter[0].filterColumns = null;
  } else {
    $table.get(0).config.filter[0].filterColumns = [selected];
  }
}

他のヒント

作業幅jFilterTablesorterのフィルターを選択:

http://www.jordigirones.com/131-filtros -desplegables-con-tablesorter.html

同じ問題がありました。選択ボックスの変更イベントで、ページをリロードするだけで問題が解決します。

<select name="search" id="search" onchange="refreshPage()" >

function refreshPage(){
        location.reload();
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top