1. ホーム
  2. validation

[解決済み] HTML5 form 要素の検証を無効にする

2022-03-20 03:12:30

質問

私のフォームでは、新しいHTML5のフォームタイプを使用したいと思います。 <input type="url" /> ( タイプについて詳しくはこちら ).

問題は、Chromeがとても親切にこれらの要素を検証してくれるのですが、それがうまくいかないということです。内蔵の検証で失敗しても、その要素がフォーカスされる以外にメッセージも表示もありません。私はURL要素の前に "http://" そのため、私の独自の検証では、これらの値を空文字列として扱いますが、Chromeはそれを拒否します。もし私が検証ルールを変更できれば、それもうまくいくでしょう。

を使うように戻せばいいのは分かっています。 type="text" しかし、私はこれらの新しいタイプを使用することで、素晴らしい拡張機能が欲しいのです(例:モバイルデバイスでカスタムキーボードレイアウトに自動的に切り替わります)。

だから 自動検証をオフにしたり、カスタマイズしたりする方法はありますか?

解決方法は?

HTML5でフォームのクライアント側検証を無効にしたい場合は、form要素にnovalidate属性を追加してください。例

<form method="post" action="/foo" novalidate>...</form>

参照 https://www.w3.org/TR/html5/sec-forms.html#element-attrdef-form-novalidate