ユーザーがいくつかの国を選択できるようにしたい、または一部の国を除くすべての国を選択できるようにしたい。
これは、すべて選択ボタンを使用してすべての項目を選択し、不要な項目のチェックを外すことで実行できます。ただし、これにより、バックエンドに送信される長いクエリが作成されます。
たとえば、アルゼンチンを除くすべての国を選択する場合、クエリは次のようになります。
select(Australia, Austria, Belgium...)
このクエリを単に
except(Argentina)
詳細を知りたい国、または詳細を望まない国を選択できることをユーザーに表示/伝えるにはどうすればよいですか?
まず、サーバーに送信するものの技術的な制約に基づいて、画面上での動作を決定しないようにする必要があります。 JavaScriptを使用して、UIに影響を与えずに、選択の一部の変更されたバージョンを送信用の非表示の入力として反映できます。
そうは言っても、これは リストビルダー UIパターン(デュアルリストとも呼ばれます)の良い候補だと思います。これにより、個々の項目を選択に追加または削除できます。 「すべて追加」または「すべて削除」のボタンを追加することもできます。私はそれがより自然な相互作用になると思います:
画像クレジット: リストボックスのMicrosoft Windowsデザインガイドライン
ユーザーの観点からは、最も簡単な方法は「反転」セレクターです。例えば。 2つのチェックボックスをオンにし、「検索」ボタンを押す前に選択を反転するソフトウェアを知っています。しかし、これにはユーザーによるある程度の指示と抽象化が必要です。
「反転」ステップをスキップする1つの可能な解決策は、2つのボタンを提供することです。
これが一番便利だと思います。