web-dev-qa-db-ja.com

テーブル検索+並べ替え操作

そこで、テーブル検索とソートの間の相互作用のベストプラクティスを理解しようとしています。これがアプリにある一般的なデータテーブルのシナリオです。

  1. ユーザーの表があります。

table of users

  1. ユーザーは名前で検索できます(結果はすぐに返されるため、手動の検索ボタンはアクティブになりません)。検索結果は、デフォルトで関連性によってソートされます。

table with search filter

  1. 次に、ユーザーは列の並べ替えをアクティブにして、フィルター処理された結果セットの順序を適切に変更できます。

a sorted order of filtered results

  1. ユーザーが新しい検索を開始すると、列の並べ替えがリセットされ、デフォルトの関連性並べ替えに戻ります。

enter image description here

私の質問は、ユーザーが検索を変更すると列フィルターがリセットされることを期待するのか、それともまだアクティブであると期待するのか?

後者の場合、私が見る課題は、列の並べ替えがアクティブ化されると(ページを更新しない限り)ユーザーがデフォルトの「関連性」の並べ替えに戻す方法がないことです。

最も簡単な解決策は、各検索後に列のソートをリセットすることです。

2
eRocket

ユーザーが列での並べ替えを選択した場合、それはユーザーの検索基準とその時点でユーザーが重要だと考えるものの追加の指標です。

それが選択およびフィルタリングされるという事実は、理想的には特定の値の範囲内にスコープを設定することです。

フィルターを解放しても、並べ替えが削除または変更されることはありません。

ユーザーとして、私は現在の検索基準が明らかにするよりも広い範囲の値を検索している可能性があります。その場合、検索ボックスをクリアすると、並べ替えられた列にすべての値が表示され、より大きな比較を行うことができます。より広い範囲のデータをスキャンできます。

いったんフィルタリングをキャンセルしたら、ソート列は重要ではないと想定しないでください。

編集:以下のコメントに基づいて可能な方向を更新しました

列で並べ替えると表示されるときにリンクが表示され、デフォルト(関連性)の並べ替えに戻ることができます。

私はおそらく最も明確な記述とおそらくより良いアイコン(あなたが提案した 'x'のような)を持っていませんが、それらにクイックリセットを許可するとうまくいくかもしれません:

mockup

download bmml sourceBalsamiq Mockups で作成されたワイヤーフレーム

1
Mike M