0

クエリに入力されたテキストに基づいて「条件付きオートコンプリート」を実行できるようにしたいと考えています。例えば:

ユーザーは次のことができます。

「f」と入力すると、すべてのフィールド名「field_name」、「field_age」の候補名が候補として表示されます。

次に、ユーザーが「field_name」を入力または選択してからボックスに「=」を入力すると、[Albert、Bob、Clarisse] などの「field_name」に固有のデータの特定のリストが要求されます。

次にユーザーが " " (スペース) を入力すると、オプションがリモートで取得またはアクセスされます ["AND", "OR", "==", "!=". ユーザーが「==」を選択または入力すると、それまでの現在の文字列「field_name == ' '」に基づいて、リスト [Albert, Bob, Clarisse] が使用されます。

ユーザーが代わりに field_age... と入力した場合、年齢 [7,3,6] のリストまたは json オブジェクトに対してリクエストが送信され、ポップアップが表示されます。検索ボックスへの入力例は次のとおりです。

field_name = 'アルバート' AND field_age = '7'

ライブラリ typeahead.js を見たことがありますが、「必要に応じてデータ」(この場合は名前と年齢) ではなく、すべてのデータを自動補完するように見えるだけです。その理由は、名前が巨大になる可能性があるためです。多くの名前があり、かなり大きなダウンロードになるため、利用可能なすべての可能なフィールドのすべての値をクライアントにダウンロードさせたくありません)。

これを行う最善の方法は何ですか?typehead.js はこれをサポートしていますか、それとも別のライブラリの方が優れていますか?

4

2 に答える 2

0

dijit/form/ComboBoxは、ここで探しているものを提供しませんか?

ここに投稿された質問に対する同様の回答がたくさんあります-それらを参照してください...

于 2013-07-17T06:26:01.943 に答える