Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript
JavaScript Forum programmation JavaScript. Lire : Cours JavaScript, FAQ JavaScript, Toutes les FAQ JavaScript et Sources JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 12/06/2011, 14h33   #1
Invité de passage
 
Inscription : avril 2009
Messages : 13
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 13
Points : 1
Points : 1
Par défaut Contrôle de saisie js

Salut

Comment on vérifie notre champ de saisie s'il est de type numérique ou caractère ?

Si je veux interdire tous les caractères spéciaux à l'exception de les espaces et l'accent '.

Et comment on vérifie le format de l'e-mail si elle est correcte ou pas !

Sachant que j'ai une fonction qui s'appelle lancer(); qui vérifie si les champs sont vide ou pas.

Merci.
info.pascal est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/06/2011, 23h55   #2
Membre éclairé
 
Avatar de beejeridou
 
Homme
Webmaster
Inscription : février 2007
Messages : 261
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Bas Rhin (Alsace)

Informations professionnelles :
Activité : Webmaster

Informations forums :
Inscription : février 2007
Messages : 261
Points : 315
Points : 315
Oui, les expressions régulières sont tes amies:

Code :
1
2
3
4
 
//Avec jQuery
if($('#idDuChampAVerifier').val().match(/^[a-zA-Z0-9 \']+$/))
    alert('le champ est valide');
Il me semble que ça ressemble à peut près à ça.
__________________
Et pourtant... Elle tourne.
http://www.artisan-developpeur.fr
beejeridou est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 13/06/2011, 10h50   #3
Membre éclairé
 
Homme
Webmaster
Inscription : septembre 2007
Messages : 376
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Webmaster
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : septembre 2007
Messages : 376
Points : 377
Points : 377
Salut,

mieux que les regex (je pense) tu peux utiliser typeof : http://www.adp-gmbh.ch/web/js/operators/typeof.html
Finality est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 13/06/2011, 17h06   #4
Membre Expert
 
Avatar de Watilin
 
Homme Matilin Torre
Étudiant
Inscription : juin 2010
Messages : 679
Détails du profil
Informations personnelles :
Nom : Homme Matilin Torre
Âge : 23
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : juin 2010
Messages : 679
Points : 1 202
Points : 1 202
Citation:
Envoyé par Finality Voir le message
Salut,

mieux que les regex (je pense) tu peux utiliser typeof : http://www.adp-gmbh.ch/web/js/operators/typeof.html
Non. Dans le cas d'un contrôle de saisie, comme on veut vérifier le format d'une chaîne, typeof renverra toujours string

Et pas besoin de jQuery pour utiliser les expressions régulières. ’Faut arrêter de balancer jQuery (ou autre framework) à toutes les sauces comme ça…
JavaScript fournit par défaut la fonction match avec le type String, et les deux fonctions exec et test avec le type RegExp.
Code JS :
1
2
3
4
5
alert("toto".match(/t[oau]/));
// ou bien
alert(/t[oau]/.exec("tata"));
// ou si on n'a pas besoin de récupérer le résultat
alert(/t[oau]/.test("tutu"));

Pour vérifier si la donnée est numérique, on peut utiliser la fonction isNaN. NaN siginifie « Not a Number », la fonction renvoie false si la donnée est un nombre. Si on veut récupérer le nombre pour l'utiliser par la suite, on peut utiliser parseInt.

Code JS :
1
2
3
4
5
6
alert(isNaN("toto")); // affiche true
alert(isNaN("127")); // affiche false
 
alert(parseInt("127", 10)); // affiche 127
alert(parseInt("42bla", 10)); // affiche 42 (le reste est tronqué)
alert(parseInt("poule", 10)); // affiche NaN

On passe toujours 10 en deuxième argument à parseInt pour s'assurer que le nombre sera bien converti en base décimale. Sinon, les nombres commençant par 0 sont convertis en octal et on ne comprend plus rien…

Pour exclure tous les caractères spéciaux sauf l'espace et l'apostrophe droite, le plus simple est la regex
avec le modificateur g si besoin.

Quand aux adresses mail, c'est loin d'être un problème inconnu, direction FAQ & Google
__________________
Disposition de clavier ergonomique française : Bépo
Watilin est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h52.


 
 
 
 
Partenaires

Hébergement Web