← エラー辞典に戻る

HTML

datalistの候補が表示されない

input と datalist の紐付けが間違っている

こんな症状

datalistで候補リストを作ったのに、入力欄に候補が出ない。idの紐付けミスで起きるよ。

まず試す

input の list 属性の値と datalist の id 属性の値を完全に一致させる。

html
<input list="fruits">
<datalist id="fruits">
  <option value="りんご">
</datalist>

これで直らなければ、下の「自分のケース」を確認。

🔍 自分のケースはどれ?

  • list と id が違う(fruits と fruit など)
    → input の list と datalist の id を完全一致させる。
  • 候補に何も出ない
    → datalist 内の option に value 属性を付ける。
  • 一部ブラウザで出ない
    → 対応状況を確認する。基本は id 一致で表示される。

なぜ起きる?

inputのlist属性の値とdatalistのid属性の値が一致していないよ。この2つが一致して初めてブラウザが候補を表示するんだ。また、datalistをinputの外に置いても動くけど、idの不一致が最も多い原因だよ。

✕ エラーが起きるコード
<input list="fruits">
<datalist id="fruit">
  <option value="りんご">
</datalist>
<!-- list="fruits" と id="fruit" が不一致 -->
✓ 直したコード
<input list="fruits">
<datalist id="fruits">
  <option value="りんご">
</datalist>
<!-- id を一致させる -->

✅ 直ったか確認

入力欄をクリック・入力したときに候補リストが表示されればOK。

🆘 まだ直らないときは

option の value が空でないか、datalist が input と同じドキュメント内にあるかも確認しよう。

Q&Aで質問する →

この解決法は役立ちましたか?

🔗 関連するエラー

📖 この問題を学べるレッスン

HTMLレッスン4:リストと表で根本から理解する →

✏️ 手を動かして練習

練習ドリル一覧で実際に書いて確認する →

📝 関連ブログ記事

📖 関連する用語

🚀 HTMLレッスン4:リストと表で根本解決しよう!

このエラーの背景にある仕組みを、手を動かしながら学べるレッスンがあります。完全無料・登録不要。

HTMLレッスン4:リストと表へ →

❓ 関連するQ&A