このウィジェットは、テキスト入力、ボタン入力、および結果を保持するための順序付けられていないリストの 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 とテキスト入力の隣にいくつかの非表示の入力を各リスト アイテムに追加できます。