私は次のマークアップを持っています:
<input type="number" max="99" />
Google Chrome(および場合によっては他のWebkitブラウザー)では、これによりスピナーの上矢印が99を超えるのを制限しますが、ユーザーが99より大きい数値を入力するのを妨げることはありません。onblurでも、無効な値は削除/置換されません。値が無効であることを示す警告ですら。
私はそれがどのように機能するのかを誤解していますか、それともこれはバグですか?最新バージョンのChrome(執筆時点では19)を使用しています。
編集:
明確にするために、最初に指定された最大値より大きい数を入力できる理由を知りたいです。フォーム送信のツールチップが無効であることを示していることは理解していますが、スピナーが最大値を超えることを許可しないという一貫性のない動作のようですが、いつでも最大値を超える数値を入力するだけで回避できますそれ。
これが何らかの理由で望ましい動作である場合、それはなぜですか?そして、JSに頼らずに入力範囲を強制するためのより良いオプションはありますか?