現在、Primefacesを使用していて、2つの日付入力コントロールから選択 ここから選択:ポップアップvsボタン。
違い:
「ポップアップ」テキスト入力をクリックすると、日付を入力でき、カレンダーに表示されるので、日付を選択することもできます。
「ボタン」のテキスト入力をクリックすると、入力のみが可能で、カレンダーから選択したい場合は、ボタンをクリックして開き、選択する必要があります。
ボタンのある方が期待される結果とアクションの具体性についてより明確であると思いますが、それがない場合は同じ機能を提供します(入力が1つと最終的なアクションが1つしかないため、生じる可能性のある混乱のレベルは最小限だと思います)そのため、ボタンが本当に必要かどうかはわかりません。
どちらを検討する必要があるのですか?
ユーザーに試してみて、違いに気づいた人はいますか?
この問題についての研究はありますか?
あなたはあなた自身の質問にほぼ答えたと思います。
2つを選択するには、ユーザーにとってどの品質が最も重要になるかを考えてください。
ウィジェットを頻繁に使用する場合、エキスパートが使用する場合、または余分なボタンがグリッドの配置を乱したり、乱雑にしたりする密な形で使用する場合は、ポップアップアプローチの方が適している場合があります。
ウィジェットがめったに使用されない、技術に精通していない人によって使用される、またはポップアップがサイト全体のUXの原則と競合する状況で使用される場合は、ボタンの方が良い場合があります。
現在、私は一般的にポップアップアプローチを好んでいます。
...しかし、それは私自身の一般的な偏見にすぎません。あなたのケースに役立つ資質、つまり上記のトレードオフを理解することがより重要です。
それが役に立てば幸い
あなたが行ったその例は本当に理想的ではありません。これを、ユーザーがフィールドと対話する方法の観点から見てみましょう。
たとえば、キーボードのユーザーを考えてみましょう。彼らがフィールドにtab
した場合、おそらくそのフィールドに手動で入力することを期待しているでしょう。カレンダー自体も表示される場合は、フォーム自体の邪魔にならない限り、日付を選択する方法はユーザー次第です。入力するか、マウスに移動してそこで選択します(カレンダーはキーボードのようには見えません)。 -このデモでアクセス可能)。
ただし、ユーザーがキーボードを使用しており、カレンダーボタン自体にtabs
を使用してそれをトリガーする場合、ユーザーはキーボードでそのカレンダーオプションを使用したいと考えることができます。その場合、フォーカスはカレンダーに切り替わり、矢印キーを使用して日付を選択できるようになります。
その例では、実際にそうすることを許可していないので、私が一緒に行くことはありません。
個人的には、フィールド+ボタンのアプローチを採用し、ユーザーがテキストフィールドを(マウスまたはキーボードのいずれかで)選択した場合、そこにカーソルフォーカスを置いて入力を開始できるようにし、ボタンを選択した場合はフォーカスを転送しますカレンダーのポップアップに。
「ボタン」オプションをお勧めしますが、どちらにも独自の長所と短所があります。
「ポップアップ」に対する理由:
「ボタン」の理由:
利点と問題の両方を比較するのではなく、「ボタン」の選択の背後にある私の推論を説明するために、それを賛否両論に分けました。
私が働いている場所でPrimefacesを使用したいのですが、Richfacesで誰もが立ち往生していて、それは苦痛です!
ボタンで開くと入力が無効にならない場合が最善ですが、それが不可能な場合は...ポップアップが表示されることは間違いありません。
カレンダーウィジェットを使用しているときに、ポップアップで日を選択し、キーボードで年を変更することがあります。これは、誕生日、次に旅行日などについて尋ねる場合に非常に重要です。最初のケースでは、入力をブロックします。私の誕生日を見つける前に、さまざまな時間をクリックする必要があります。2番目のケースでは、それを処理できます。来月はスキップする必要があるので、あなたが求めている日付はポイントです。
しかし、ボタンがなくてもユーザーがそれを使用する方法を知っている場合でも、日付ピッカーがこのように機能するのを見るのは今では一般的だと思います。