← エラー辞典に戻る

HTML

🔥 buttonクリックでページがリロードされる

form内のbuttonがデフォルトでsubmitになる

😰 こんな症状

form内のbuttonにtype属性を指定しないとページがリロードされる。ボタンクリックで意図しないリロードが起きるときはこれが原因だよ。

🔍 原因

form内の<button>はtype属性を省略するとデフォルトでtype="submit"になるよ。そのため、クリックするとフォームが送信されてページがリロードされてしまうんだ。送信目的でないボタン(キャンセルボタン等)にはtype="button"を明示する必要があるよ。

❌ エラーが起きるコード

<button>キャンセル</button>
<!-- type 未指定で submit になる -->

✅ 直し方

1. 送信しないボタンにはtype="button"を明示する。 2. 送信ボタンにはtype="submit"を明示する(省略してもOKだが明示が推奨)。 3. JavaScriptでe.preventDefault()を使う方法もあるが、type属性で制御する方がシンプルだよ。

✅ 修正後のコード

<button type="button">キャンセル</button>

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

🔗 関連するエラー

🔗 別カテゴリの関連エラー

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

HTMLコースで基礎から学ぶ →

📝 関連ブログ記事

📖 関連する用語

🚀 HTMLコースで基礎を学ぼう!

エラーの原因を根本から理解するには、基礎を体系的に学ぶのが近道です。完全無料・登録不要。

HTMLコースを始める →

❓ 関連するQ&A