最も簡単な例は次のとおりです。
<input id="number" type="number" value="1">
console.log(document.getElementById('number').value);
これにより、期待どおりに1がログに記録されます。ただし、これは次のとおりです。
<input id="number" type="number" value="1A">
console.log(document.getElementById('number').value);
値に数字が含まれていないため、空の文字列''をログに記録するだけです。一部のデバイス+ブラウザ(Chromeなど)では、これらの入力に数字以外の文字を入力できます。
これをサポートするデバイス(iPhone、iPadのテンキーなど)にtype = "number"入力が必要なため、これは面倒です。ただし、JavaScriptを使用して、ダーティ入力の入力を停止したいのですが(キーアップ時に値をフェッチする必要があります)、非数値文字を正規表現で置き換えます。
jQueryの.val()メソッドでも同じ結果が得られるようです。