1102 votes

Existe-t-il un type de saisie flottante en HTML5 ?

Selon html5.org l'attribut "value" du type d'entrée "number", s'il est spécifié et non vide, doit avoir une valeur qui est un nombre à virgule flottante valide".

Pourtant, il s'agit simplement (dans la dernière version de Chrome, en tout cas) d'un contrôle "updown" avec des entiers, et non des flottants :

<input type="number" id="totalAmt"></input>

Existe-t-il un élément d'entrée à virgule flottante natif de HTML5, ou un moyen de faire en sorte que le type de saisie des nombres fonctionne avec des flottants et non des entiers ? Ou dois-je recourir à un plugin jQuery UI ?

4voto

J'utilise React sur mon IPad, type="number" ne fonctionne pas parfaitement pour moi. Pour mes nombres à virgule flottante compris entre 99,99999 et .00000, j'utilise l'expression régulière suivante (^[0-9]{0,2}$)|(^[0-9]{0,2}\.[0-9]{0,5}$) . Le premier groupe (...) est vrai pour tous les nombres positifs à deux chiffres sans la virgule flottante (par exemple 23), | ou par exemple .12345 pour le second groupe (...) . Vous pouvez l'adopter pour n'importe quel nombre positif à virgule flottante en changeant simplement l'intervalle {0,2} ou {0,5} respectivement.

<input
  className="center-align"
  type="text"
  pattern="(^[0-9]{0,2}$)|(^[0-9]{0,2}\.[0-9]{0,5}$)"
  step="any"
  maxlength="7"
  validate="true"
/>

4voto

Guenter Points 361

Ce sujet (par exemple step="0.01" ) est lié à stepMismatch et est supporté par tous les systèmes de gestion de la qualité. Navigateurs comme suit : enter image description here

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X