Chrome と Firefox の HTML5 データリスト要素の処理の間に問題が発生しています。
私はそれを悪用している可能性があります.Firefoxは私が期待する方法で処理していますが、Chromeはそうではありません. Opera では試していません。これは社内向けのページなので、使用しているブラウザを制御できます。
次のように、値と内部テキストを設定します。
<input list="Names" placeholder="Enter Name or ID" name="txtSearchValue" autocomplete="off"/>
<datalist id="Names"><%=OptionsList%></datalist>
サーバー側の値「OptionsList」は、データベース クエリから動的に作成されます。最終結果は、おおよそ次のようになります。
<option value="123">Sam's Fresh Sandwiches</option>
<option value="234">Sawatdee</option>
等
Firefox では、"S" の後に "A" (大文字と小文字を区別しない) を入力すると、上記の両方のエントリが表示されます。「W」を入力するか、マウスで Sawatdee を選択するとすぐに、テキスト ボックスに 234 が入力されます。これは、私が望んでいることです。Sawatdee ではなく 234 をサーバーに送り返したいからです。「A」を入力してから「T」を入力しても機能します。
Chrome では、必要なすべての文字を入力できますが、リストには何も表示されません。ただし、2 を入力すると、2 番目のエントリのみが表示されます。しかし、リストには 2 の後に Sawatdee が表示されます。
データリストを過度に使用/悪用していますか、それとも Chrome に問題がありますか? または、Chrome は技術的に想定されているとおりに処理しており、Firefox のバグを見つけましたか?