<datalist></datalist>
要素を利用しますHTML5 <datalist></datalist>
要素は、フォーム入力のオートコンプリート提案を提供する簡単な方法を提供します。 list
属性を使用して、 <datalist></datalist>
要素を<input>
要素に関連付けることで機能します。 <datalist></datalist>
要素自体には<option></option>
要素が含まれており、それぞれが可能な提案を表しています。ユーザーが関連付けられた<input>
フィールドでタイピングを開始すると、ブラウザは<datalist></datalist>
からのオプションを含むドロップダウンリストを表示します。
これがあなたのやり方です:
<code class="html"><input type="text" list="browsers" name="browser"> <datalist id="browsers"> <option value="Chrome"> </option> <option value="Firefox"> </option> <option value="Safari"> </option> <option value="Edge"> </option> <option value="Opera"> </option></datalist></code>
この例では、 list
属性を「ブラウザ」に設定した<input>
要素は、ID「ブラウザ」を使用して<datalist></datalist>
要素にリンクされています。ブラウザは、ユーザーが入力フィールドのタイプとして<datalist></datalist>
からオプションを自動的に表示します。ユーザーは、ドロップダウンから提案を選択するか、入力を続行して手動で値を入力できます。 <datalist></datalist>
要素自体はページに直接表示されないことに注意してください。リンクされた入力の提案のソースとしてのみ機能します。
<datalist></datalist>
提案をスタイリングします残念ながら、CSSを使用して<datalist></datalist>
要素によって直接提供される提案をスタイリングすることは限られています。標準のCSSセレクターを使用して、ドロップダウンリスト自体を直接スタイリングすることはできません。ブラウザベンダーはさまざまなレンダリングスタイルを実装しており、すべてのブラウザでこれらのスタイルをオーバーライドする一貫した方法はありません。 <datalist></datalist>
またはその<option></option>
要素をCSSのスタイリングしようとする試みは、しばしば一貫性がないか、効果がないことがよくあります。
ただし、間接的に外観に影響を与えることができます。たとえば、 <input>
要素自体をスタイリングすることができます。これは、オートコンプリートの提案の全体的な視覚的コンテキストに影響します。フォント、ボーダー、またはパディングを変更する場合があります。しかし、ドロップダウンを直接スタイリングすることは依然として挑戦的でブラウザに依存します。この制限は、複雑なスタイリング要件にネイティブ<datalist></datalist>
要素を使用することの重要な欠点です。
<datalist></datalist>
のブラウザ互換性の問題<datalist></datalist>
要素は最新のブラウザ全体で幅広いサポートを享受していますが、互換性のニュアンスに注意する必要があります。
<datalist></datalist>
要素をまったくサポートできない場合があります。古いブラウザの場合、JavaScriptを使用してカスタムオートコンプリート機能を作成するなど、フォールバックメカニズムが必要です。 JavaScriptを使用した機能検出は、ブラウザが頼る前に<datalist></datalist>
をサポートするかどうかを判断するのに役立ちます。<datalist></datalist>
にJavaScriptを動的に浸透させますjavaScriptを使用して、 <datalist></datalist>
要素内のオプションを動的に設定できます。これにより、より柔軟でデータ駆動型のオートコンプリートの提案を作成できます。サーバー、データベース、またはその他のソースからデータを取得できます。
これが例です:
<code class="javascript">const datalist = document.getElementById('myDatalist'); const options = ['apple', 'banana', 'cherry', 'date']; options.forEach(option => { const optionElement = document.createElement('option'); optionElement.value = option; datalist.appendChild(optionElement); });</code>
このコードスニペットは、ID「MyDatalist」で<datalist></datalist>
要素を選択し、一連のオプションを繰り返します。各オプションについて、新しい<option></option>
要素を作成し、その値を設定し、 <datalist></datalist>
に追加します。このアプローチを使用すると、提案を動的に構築でき、より応答性が高く適応可能なオートコンプリートエクスペリエンスを提供できます。このコードを特定のデータソースに適応させ、メカニズムを取得することを忘れないでください。たとえば、 fetch
を使用してAPIからデータを取得できます。
以上がHTML5&lt; Datalist&gt;を使用するにはどうすればよいですか フォーム入力のオートコンプリート提案を作成する要素?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。