-1

わかりましたので、リンクボタンを選択したオートコンプリート ドロップダウンが必要です。したがって、ユーザーはカーソルを「テキスト ボックス」に置き、オプションのリストを表示します。入力を開始してリストを絞り込むか、リストのオプションの 1 つを選択できます。クリック (または Enter キーを押す) するとすぐに、これがリンクされているデータセットが選択によってフィルター処理されます。

わかりました、これはドロップダウンの周りに AJAX オートコンプリートをラップするのと同じくらい簡単ですか? いいえ?(お願いします?)

4

4 に答える 4

0

何が必要かは完全にはわかりませんが、Ra-Ajax AutoCompleterは、それ自体に「コントロール」を含めることを確実にサポートしています。リンクを使用しているStacked(右上隅)の検索ボックスで確認できます。ただし、必要に応じて、これをLinkBut​​tonにすることもできます...

免責事項; 私はRa-Ajaxと仕事をしています...

于 2008-12-04T08:10:00.157 に答える
0

このウィジェットは、テキスト入力、ボタン入力、および結果を保持するための順序付けられていないリストの 3 つの項目で作成できます。

 __________  _
|__________||v|__             <-- text and button
  |              |            <-- ul (styled to appear relative to text input)
  |              |
  |              |
  |______________|

UL表示:

  • テキスト入力の「keyUp」イベント (値が空でない場合)
  • ボタン入力の「クリック」イベント (現在表示されていない場合)

UL は次の場所に隠されています:

  • ボタン入力の「クリック」イベント (現在表示されている場合)
  • リストアイテムの「クリック」イベント

ul が表示されるか、テキスト入力の「keyUp」イベントがトリガーされると、リストを更新するためにサーバーへの AJAX 呼び出しを行う必要があります。

成功した場合、結果は ul に配置する必要があります。リスト項目を作成するときは、テキスト入力値を設定し、ul を非表示にする「クリック」イベントを関連付ける必要があります (イベントを関連付けるために、li 内にリンクを追加する必要がある場合があります)。

最も難しい部分は実際には CSS です。JavaScript は、特に複数のブラウザーをサポートするプロトタイプのような堅実なライブラリーを使用して単純です。

おそらく、アイテムのいくつかの ID をサポートしたいので、選択したアイテム ID を保存するために、id とテキスト入力の隣にいくつかの非表示の入力を各リスト アイテムに追加できます。

于 2008-12-03T22:50:15.607 に答える
0

ユーザーの選択に基づいてデータセットを再バインドするには、ドロップダウン リストの OnSelectedIndexChanged イベントを処理する必要があります。非同期ポストバックでフィルタリングを実行する場合は、データセット (または私が想定しているデータグリッド) とドロップダウンを UpdatePanel にラップします。それはとにかくそれを行う1つの方法です。

于 2008-09-02T20:20:25.137 に答える
-1

私の意見では、これにAJAXを使用するべきではありません。

理由は次のとおりです。

(1)フォーカス:彼が選択できるすべてのオプションがドロップダウンに表示されます。これは、すべての可能なオプションがすでにクライアントに送信されていることを意味します。

(2)ユーザーが何かを入力すると、ドロップダウンのエントリ数が一致するようにフィルタリングされます。これは、クライアント側で簡単に実行できます。この時点でajax'yでサーバーに戻ると、処理速度が低下します。

phpguru.orgには、「ほぼ正確に」必要なコントロールがあります。

http://www.phpguru.org/static/AutoComplete.html#demo

フォーカスではなくダブルクリックでドロップダウンが表示されるという点で、必要なものとは少し異なります。これはかなり簡単に変更できるはずです。

これがお役に立てば幸いです。

于 2008-12-04T07:55:18.860 に答える