自動提案ボックスを作成しようとしています。ユーザーが #tagSelection 入力フィールドに入力を開始すると、JQuery は Ajax を介してデータベースから候補を取得し、#tagSelection フィールドのすぐ下に表示される #suggestBox div に表示します。
ここで、ユーザーが下矢印キーを使用して候補の 1 つを選択できるようにしたいと考えています。keydown() イベントを処理し、このイベント中に最初のエントリにクラスを割り当てることで、これを構築し始めました。私が直面している問題は、下矢印キーを離すとクラスが再び削除されることです。キーを離したときに割り当てられたままにする必要があります。それは可能ですか?
HTML
<div class="form-entry">
<input id="tagSelection" name="tags" type="text" value="" size="40">
<div id="suggestBox" style="">
<a href="#" id="1">design</a>
<a href="#" id="3">debit card</a>
<a href="#" id="4">deer</a>
<a href="#" id="addTag">Add word</a>
<div id="selectedTags"></div>
</div>
JQuery
(function() {
$('#tagSelection').keydown(downArrowKeyHandler);
})();
function downArrowKeyHandler(event) {
if (event.keyCode == 40) {
if ($('#suggestBox').length > 0) {
if ($('[tagSelected = 1]').length == 0) {
// the tagSelected class gives the entry a colored background
$('#suggestBox').children().filter(':first').addClass('tagSelected');
}
}
}
}