2

ドロップダウンで値を指定することで制限できるレポートがあるとします。このドロップダウン リストは、30,000 件を超えるレコードを含むテーブルを参照しています。これがドロップダウンに入力するのは現実的ではないと思います! では、この状況でユーザーが値を選択できるようにする最善の方法は何でしょうか? これらの値には実際にはカテゴリがなく、値の最初の文字で (入れ子になったドロップダウンの状況を使用して) 細分したとしても、数千のエントリが残る可能性があります。

これに対処する最善の方法は何ですか?

4

6 に答える 6

5

分類せずに検索してください。

コントロールを単純なテキスト ボックスとして表示できます。ユーザーが数文字入力すると、オートコンプリートのようなドロップダウンが表示され、最終的な値を選択できます。autocomplete の jQuery プラグインへのリンクは次のとおりです。

于 2010-03-15T03:44:41.873 に答える
3

30,000 要素のドロップダウンはありません。GUI は、難しくするのではなく、ユーザーにとって使いやすくすることになっています。

アルファベット順以外にデータを分類する方法が他にない場合、最初の文字だけを使用する 2 段階のアプローチを使用することに制限されません。最初の 2 文字に依存するようにします。

これにより、最初のドロップダウンで最大 676 (アルファのみを想定)、2 番目のドロップダウンで (平均で) 44 が得られます。

この問題に対して、実際には 2 つのアプローチを取りました。BIRT (私たちが使用) では、最初のドロップダウン ボックスを変更するたびに、その第 2 レベルのクエリを簡単に実行できるカスケード パラメーターが可能です。

しかし、私たちの顧客の何人かは、優れた GUI をまったく気にしません (もちろん、管理者をなだめるための優れた 9 ポイントの Verdana と美しいチャートの出力を除きます)。"SYS_PAX_%"彼らは、入力するだけでクエリを変更できる自由形式のテキスト入力フィールドを好みます。

もちろん、これらの顧客は、データベース内のデータを正確に把握しており、SQLLIKE句による分類に役立つ値を使用しています。また、検索機能を好む人もいます。

于 2010-03-15T03:43:45.160 に答える
1

asp.netドロップダウンボックスに関して、約2年前に同じ質問がありました。

私を信じてください、それを試さないでください。上記のオートコンプリートの提案を使用してください。5000 レコードを超えるものを表示すると、ブラウザーがクラッシュする傾向があることがわかりました。

ちょうど私の2セント。

于 2010-03-15T05:50:55.837 に答える
0

+1 @pax. それでも私は 30K ドロップダウンを見たいです! :)

@JustAProgrammer、おそらく、人々が探しているものの最初に入力できるテキストボックスを作成し、入力時にフィルターをかけることができます.

于 2010-03-15T03:45:34.190 に答える
0

ユーザビリティの観点ではなくパフォーマンスの観点から質問している場合は、上下にスクロールするときにオンデマンドでリスト項目のサブセットのみをロードするライブ リスト アプローチの使用を検討します。ユーザーがリストをすばやく下へ、つまり真ん中をクリックすると、その位置に対応する別の 10 個の要素が読み込まれます。レンダリング時間とロード時間の両方が大幅に短縮されます。

ページングに似ていますが、「流動的」です。

于 2010-03-15T03:52:38.193 に答える