Autoriser/valider entier, décimal, les valeurs flottantes en jquery
J'ai eu un champ html comme ci-dessous
<input type="text" name="price" class="validate_price" id="price"/>
De sorte que le champ doit accepter uniquement les float, les décimales, les valeurs entières de l'entrée.
jQuery code
<script>
function isFloat(value)
{
return value!= "" && !isNaN(value) && Math.round(value) != value;
}
$(document).ready(function(){
$('.validate_price').focusout(function(){
var value = this.value;
if (value)
{
if (!isFloat(value) || !$.isNumeric(value))
alert('Value must be float or not');
}
});
});
</script>
Donc, à partir du code ci-dessus, ce que tout mon intention est, je devrait permettre à l'utilisateur d'entrer des valeurs entières(1,2,2, etc.,)
, les valeurs flottantes(1.0, 2.0, 3.0, 3.2, 3.5, etc.)
et les valeurs décimales(2.152, 4.56, 5.000, 6.3256, 2.00 etc.,)
Comment vérifier/mettre en ouvre la fonctionnalité ?
- Merci de ne pas marquer votre question avec un plugin que vous ne l'utilisez pas. Édité. Merci.
Vous devez vous connecter pour publier un commentaire.
Si vous remarquez de la
jQuery.isNumeric()
manuel manuel, il valide également les chars, donc il n'est pas nécessaire d'inclure tous les autres arguments. Pour valider un certain nombre, tout ce que vous avez à faire est d'utiliserjQuery.isNumeric()
:J'ai fait une rapide jsFiddle pour vous: http://jsfiddle.net/guxz9/
Prises à partir d'un paragraphe dans MDN documentation sur parseFloat :
Ce sera valide votre tous les nombres réels.Il sera également valable en une seule fois le signe négatif('-') et le point(.) symbole.
Valider:
-12.33
12.44
12