2009-11-10 2 views
0

En fait, je fais ceci:vérifier si un champ de formulaire est numérique en utilisant Jquery pour obtenir sa valeur

var phone = $("#phone").val(); 

Je veux vérifier si:

1) Téléphone contient des chiffres

2) téléphone contient au moins 10 chiffres

Mais le problème est, de mon expérience, en utilisant $("something").val() retours comme une chaîne si isNaN() échoue. Mais je ne veux pas utiliser parseInt() non plus, car cela changera aussi les chaînes en nombres et alors isNaN() passera toujours.

pensées?

Répondre

3

Vous pouvez utiliser une expression régulière comme celui-ci:

if (phone.match(/^\d{10,}$/)) { 
    // the input contains at least 10 digits 
} 
+0

Merci! Poskigfo; lksgf; lkg; lf'dkg; l; skfd grable pour faire 15 caractères –

1

Comme dit vous pouvez @ Andrew utiliser reg ex pour faire le contrôle comme celui-ci.

var regExp = new RegExp("^"+pattern+"$",""); 
return regExp.test(value); 

Placez le haut dans une fonction et passer le Patern en elle pour la rendre réutilisable.

Remplacez le motif par celui qui correspond à vos besoins. Celui de @Andrew a l'air de marcher.

Questions connexes