ユーザーが特定の構成オプションを選択できるようにするUIの一部を設計している開発者です。
構成できるセクションは4つあります。
filter out all male fish that are alive, all female cats that are spayed, and all female dogs that are not spayed
に沿って考えることができます。これにはペットショッププログラムではありませんが、8種類のオブジェクト(魚、猫、犬など)があり、それぞれに10のフラグ(吐かれた、生きている、男性/女性など)があります。 。私の最初のアイデアはチェックボックスのマトリックスを持つことでしたが、ビジネスはいつでもそれをいずれかの方向(タイプまたはフラグ)に拡張することを要求する可能性があり、それは醜く速くなる可能性があります。
別のアイデアはアコーディオンでしたが、その後アコーディオンのアコーディオンになりましたが、それははるかに優れているようには見えません。
他にどのような選択肢がありますか?
編集:セクション3の例
download bmml source – Balsamiq Mockups で作成されたワイヤーフレーム
チェックボックスグリッドを使用して、順調に進んでいると思います。改善が必要なのはあなたのデザインだけです。テーブルのヘッダーとしてオブジェクトを使用し、行として属性を使用します。
チェックボックスのマトリックスが見苦しくなってしまうのは正しいことです:)また、小さい画面に拡張することもできません(それが問題である場合)。
いくつかの解決策が思い浮かびます:
MultiSelect
これは、複数選択の優れた使用例のようです。利点は、ほぼすべての潜在的なオプションにスケーラブルであり、選択されたオプションのみが表示され、検索可能であるため、ユーザーが探しているものを知っている場合は非常に高速です。
以下の例はReactと呼ばれるコンポーネント React Select なので、残念ながら標準のHTML要素ではありません。これはReact以外の多くの要素で実装できます。
標準HTML選択(複数)
標準のHTML要素に限定されている場合は、<select>
要素とmultiple
属性:
ツリー選択
この特定のケースでは、ツリー選択が最良のソリューションである可能性があります。ツリー選択により、ユーザーはさまざまな選択オプションをドリルダウンできます。これにより、互換性のないコンボが選択されなくなります。