web-dev-qa-db-ja.com

検索演算子の単純な実装(開始、含む、=など)

検索フィールドにこれらの種類の演算子を実装するためのさまざまなメソッドに関する入力を取得したいと考えていました。

ほとんどの場合、これらのオプションを含む各フィールドの前に追加のドロップダウンオプションを追加することで行われていることを確認しました(Appleはこの方法を頻繁に使用しています)

mockup

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

ただし、これはUIで多くの不動産を占有します。

私はそれを単一の入力フィールド内に保持し、おそらく文字列の入力方法からのフィルタリングを導入したいと思います:

  • 含む(デフォルト):John
  • 次で始まる:Jo *
  • 等しい:「ジョン」

これは最初はトレーニングの問題ですが、一度習得すれば、現在のデザインへのUIの影響を最小限に抑えることができます。

3
bfritz

ゼロの学習努力を必要とし、認識力と記憶力が少なく、より豊かな論理的関係を提供するものは次のとおりです。
enter image description here
したがって、命題は、姓から名までの出現を含む順序付けされた方法で検索結果を表示することです。関係は構築されませんが、認識され、検索結果から選択されます。リコールよりも認識!

利点は次のとおりです。

  • 学習は必要ありません –フラグメントを入力するだけです。
  • 少ない認知と記憶が読み込まれます:人間は認識操作に優れています。彼は結果を見て、検索されている人を認識して思い出します。対照的に:

    1. 名前の断片の関係を念頭に置いて構築する(で始まる、含むなど)、
    2. 念頭に置いた関係をインターフェイスコントロールにマッピングする。
  • より論理的な関係:Start with、Contains、Equalsを超えて、より多くの関係があります。したがって、独自の検索言語を開発しないようにするには、結果を適切な方法で並べ替えます。
  • 詳細なエラーの証明リレーションが誤って構築されている可能性があるため(フラグメントは名ではなく、誰かが思ったようにではなく、姓で)。
3

効果的な検索フォームの作成に関するSmashing誌の素晴らしい記事を以下に示します。 http://uxdesign.smashingmagazine.com/2009/12/08/principles-of-effective-e-commerce-search/

私はあなたがしたことはこれに非常に似ていると思います http://www.myfonts.com/search/ (上記の記事で述べました)そして、これらの人にとってはうまく機能しているようです。違いは、ユーザーが不要なフィルターを削除して(画面スペースを節約するため)、検索フォームをカスタマイズできることです。

1
Rasha