私はhtml5番号を入力しています:<input type="number" />
整数や小数だけでなく、381/2などの分数や混合数も受け入れてほしい。
分数サーバー側を解析します。
現在、入力がフォーカスを失うと、ブラウザは入力を38に変更します。
現在の回避策はプレーンテキスト入力を使用することですが、type="number"
モバイルで特定のキーボードなどを使用する利点が欲しいです。
私はhtml5番号を入力しています:<input type="number" />
整数や小数だけでなく、381/2などの分数や混合数も受け入れてほしい。
分数サーバー側を解析します。
現在、入力がフォーカスを失うと、ブラウザは入力を38に変更します。
現在の回避策はプレーンテキスト入力を使用することですが、type="number"
モバイルで特定のキーボードなどを使用する利点が欲しいです。
この<input type="number">
要素は、数字を入力するためのブラウザ依存のブラウザロケール依存の入力コントロールを作成するために定義されています。属性を使用して範囲と精度を指定できるという意味を除いて、ドキュメントでこれを変更する方法はありません。したがって、ブラウザは38 1/2 を受け入れて内部的に 38.5 に変換できますが、そうすべきだと言う方法はありません。さらに、数値の内部形式 (サーバーに渡される) は厳密に定義されています。たとえば、38 1/2 にすることはできません。
そのため、プレーン テキスト入力または特別なウィジェット (JavaScript でプログラム) を使用する必要があります。属性を使用してpattern
、許可された形式、少なくとも許可された文字セットを指定できます。これは、タッチ デバイスに表示されるオンスクリーン キーボードに影響する場合もあれば、影響しない場合もあります (現在のデバイスでは影響しない可能性があります)。