3

HTML 要素には多くの値があり<select>、ユーザーがすばやく入力できるようにし、Enter キーを押してそれぞれを受け入れられるようにします。

ただし、ユーザーの入力が速すぎると、選択した値は変更されません。理由はわかりませんが、これは、値の入力機能がリセットされて新しい値の入力を開始できるようになる前に、select 要素でユーザーが一時停止する必要があり、Enter キーを押してもリセットされないためだと思われます。

私の問題を説明するjsFiddleは次のとおりです。

HTML

<select>
    <option>a</option>
    <option>b</option>
    <option>c</option>
    <option>d</option>
    <option>e</option>
</select>

<ol>
</ol>

Javascript

$('select').on('keydown',function(e) {
    if (e.which === 13) { // Enter
        $('ol').append('<li>' + $('select').val() + '</li>');
    }
});

あなたが十分に速ければ、<ol>何を入力しても同じ値で埋められます。高速なユーザーが入力した値のみを取得できるようにするには、何を変更できますか?

4

2 に答える 2