いくつかの検証コードを書いているときに、jQueryで奇妙なことに出くわしました-私はhtml5の「数値」フィールドを持っています。
<input type="number" class="required numeric" />
私のスクリプトは、クラスをチェックアウトし、必要に応じて検証するページ上のすべてのフィールドを調べます。奇妙なことに、数値フィールドの 1 つに「X」を入力すると、「これは数値でなければなりません」というエラーではなく、「このフィールドに値を入力してください」というエラーが表示されることに気付きました。いくつかの頭を悩ませ、多くのデバッグを行った後、私は jsFiddle をノックアップして私の理論をデモしました。数値フィールドに文字を入力し、jquery から .val() を実行しようとすると、何も返されないようです。フィールドは空でした(Chromeでこれに遭遇しました-すべてのブラウザでこのように機能するかどうかはわかりません);
http://jsfiddle.net/shawson/SE46L/3/
ここにフィドルがあります-いくつかの数字を入力してから、いくつかの文字を入力して、クレイジーさを確認してください. これが設計によるものかどうかは誰にもわかります。もしそうなら...なぜですか?