Champs de Formulaire: vérification javascript [Résolu/Fermé]

Messages postés
28
Date d'inscription
mercredi 21 novembre 2007
Statut
Membre
Dernière intervention
1 juillet 2009
- - Dernière réponse : callahan75
Messages postés
28
Date d'inscription
mercredi 21 novembre 2007
Statut
Membre
Dernière intervention
1 juillet 2009
- 20 févr. 2008 à 17:53
Bonjour à tous,

j'aimerais créer un formulaire avec du javascript "propre" et le plus simple possible... mais je coince pour une vraie vérification des champs (voir mon ex. ci-dessous ) car j'aimerais inclure pour chaque champ de texte une vérif' supplémentaire, efficace, pour éviter un remplissage farfelu par des espaces, chiffres ou autres caractères... Je n'ai pas trouvé la bonne expression régulière ou le bout de code qui s'incluerait convenablement dans le mien...(celui-ci vérifiant en fait que dalle ! hormis l'absence de frappe ) Le problème se posera aussi pour le mail !...Donc si quelqu'un passait par là et pouvait inclure à ce début de script quelques lignes "imparables" cela serait très sympa à vous... Par avance merci.



<script type="text/javascript">

function verif_form1()
{
if (document.getElementById('nom').value=="" ) {
alert ("Veuillez entrer votre nom SVP");
return false;
}

if (document.getElementById('prenom').value=="" ) {
alert ("Veuillez entrer votre prénom SVP");
return false;
}

else {
return true;
}
}

/*/////////////////////////// ETC.... //////////////////////////*/

</script>
Afficher la suite 

9 réponses

Meilleure réponse
Messages postés
203
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
16 mars 2010
145
4
Merci
var numb = '0123456789';
var lwr = 'abcdefghijklmnopqrstuvwxyz';
var upr = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
 
function isValid(parm,val) {
  if (parm == "") return false;
  for (i=0; i<parm.length; i++) {
    if (val.indexOf(parm.charAt(i),0) == -1) return false;
  }
  return true;
}
 
function isNum(parm) {return isValid(parm,numb);}
function isLower(parm) {return isValid(parm,lwr);}
function isUpper(parm) {return isValid(parm,upr);}
function isAlpha(parm) {return isValid(parm,lwr+upr);}
function isAlphanum(parm) {return isValid(parm,lwr+upr+numb);}


Si tu veux qu'un champ ne contienne que des caractères alphabétiques par exemple:
if(isAlpha(document.getElementById('id_champ').value))

Dire « Merci » 4

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 62666 internautes nous ont dit merci ce mois-ci

Messages postés
574
Date d'inscription
mercredi 19 décembre 2007
Statut
Membre
Dernière intervention
1 octobre 2009
98
0
Merci
Je suis dans le même cas que toi
Messages postés
28
Date d'inscription
mercredi 21 novembre 2007
Statut
Membre
Dernière intervention
1 juillet 2009
0
Merci
Eh bin si personne ne se manifeste on va pouvoir monter un club ! En fait il faudrait déjà trouver un équivalent du Trim PHP suffisamment clair et éprouvé... Si tu as une piste Lefouerrant n'hésite pas !
Messages postés
574
Date d'inscription
mercredi 19 décembre 2007
Statut
Membre
Dernière intervention
1 octobre 2009
98
0
Merci
Excuses-moi, je n'avait pas lu correctement ton code, document.getElementById('nom').value c'est un champ de formulaire ? Parce que les champs de formulaire se definnisent comme ça : document.form.nom.value
en sachant que form est le nom de ton formulaire (nom, pas id)
Messages postés
28
Date d'inscription
mercredi 21 novembre 2007
Statut
Membre
Dernière intervention
1 juillet 2009
0
Merci
C'est la syntaxe DOM WC3 actuelle il me semble pour sélectionner les éléments. La tienne est tout autant fonctionnelle voire meilleure pour les anciens navigateurs...mais qui utilise encore IE 4 ? Tu peux même "cibler" comme cela: document.forms["NomFormulaire"].elements["NomElement"].focus(); par ex. pour placer le focus.
Messages postés
28
Date d'inscription
mercredi 21 novembre 2007
Statut
Membre
Dernière intervention
1 juillet 2009
0
Merci
Merci beaucoup Enax. Je vais aller inclure tout cela et repasserai pour te dire si c'est avec succès !
Messages postés
28
Date d'inscription
mercredi 21 novembre 2007
Statut
Membre
Dernière intervention
1 juillet 2009
0
Merci
Bon à vrai dire je ne me suis servi que du "isAlpha", ne maitrisant pas encore certains mécanismes je préfère y aller à mon rythme !

<script type="text/javascript">

function verif_form1()
{

if (!isAlpha(document.getElementById('nom').value))

{
alert ("Veuillez entrer votre nom SVP");
document.forms[0].elements["nom"].focus();
return false;
}

else {
return true;
}
}

j'aimerais avant tout conserver cette forme là pour vérifier les champs...Ne peut-on pas déclarer une variable au sein de la fonction verif du genre : var ch1= /^[A-Z-]+$/i et l'appliquer à certains champs de textes et l'étoffer bien sûr pour vérifier un mail par ex. ? Sans tout chambouler, où pourrait-on déclarer une variable, expression régulière ou chaine de caractères me permettant de conserver cette structure tout en personnalisant chaque champ? Merci à tous pour vos précieux renseignements...car faut que je m'y mette !
Messages postés
203
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
16 mars 2010
145
0
Merci
C'est tout à fait possible d'utiliser une expression régulière.

Après c'est toi qui voit :
- soit tu crées autant d'expression que nécessaire en les appelant chacune leur tour,
- soit tu crées une seule expression que tu redéfinies avant chaque appel.
La déclaration peut se faire où tu veux avant l'appel, mais le code sera plus clair si c'est au début de ta fonction.

Pour le reste, je te renvoies ici :
http://www.commentcamarche.net/javascript/jsregexp.php3
Messages postés
28
Date d'inscription
mercredi 21 novembre 2007
Statut
Membre
Dernière intervention
1 juillet 2009
0
Merci
Ok merci à toi, je vais creuser et digérer tout ça !