Script de vérification de formulaire avec des choix cachés
benetophe
Messages postés14Date d'inscriptionsamedi 20 décembre 2008StatutMembreDernière intervention22 mai 2015
-
13 mai 2009 à 12:39
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 2015
-
22 mai 2009 à 08:33
Bonjour à tous,
Je poste ce message car je sèche royalement sur un script de vérification de formulaire.
Après plusieurs jours de recherche sur la toile, je ne trouve pas le script qui me permet de faire la vérification.
Donc j'espère qu'il y aura une âme charitable qui voudra bien m'aider.
Mon formulaire se décompose en 2 parties :
- Une partie fixe et visible
- Une partie qui varie en fonction du choix sélectionné dans une case SELECT.
voici un morceau de mon code html :
<form method= POST name="myform" language="JavaScript" action=envoi.php onSubmit="boutonEnvoi.disabled=true;">
<option value="" selected="selected">Merci de faire un choix</option>
<option value="CHOIX0">Choix0</option>
<option value="CHOIX1">Choix1</option>
<option value="CHOIX2">Choix2</option>
</select>
*
NOM :
PRENOM :
AUTRE NOM :
AUTRE_PRENOM :
......
</form>
Mon soucis est de faire une vérification du formulaire avec le choix sélectionné et que cette vérification ne prenne pas en compte les choix non-sélectionnés.
De plus, la vérification doit se faire sur :
- soit que du texte
- soit que des nombres
- soit les 2
et tout cela avec des nombres de caractères définis (exemple un code postale = 5 nombres)
J'étais parti sur le script de vérification "gen_validatorv31.js" mais je n'arrive pas à l'adapter aux choix.
Merci beaucoup par avance pour votre aide.
A+ et merci
benetophe
A voir également:
Script de vérification de formulaire avec des choix cachés
benetophe
Messages postés14Date d'inscriptionsamedi 20 décembre 2008StatutMembreDernière intervention22 mai 2015 13 mai 2009 à 14:14
Salut Bul3,
En relisant le post, tu m'avais effectivement orienté vers cela...
Et pour tout t'avouer, je suis légèrement voir très débutant dans l'encodage javascript.
C'est pour cela que je n'avais pas fait plus attention...
Si j'ai bien compris, mon code devrais être celui-ci si je reprends mon script de vérification :
<script>
function trait()
{ var d1=document.getElementById('CHOIX1');
var d2=document.getElementById('CHOIX2')
d1.style.display="none";
d2.style.display="none";
switch ( document.getElementById("TYPE_CHOIX").selectedIndex )
{ case 1:
d1.style.display='inline';
frmvalidator.addValidation("NOM_CHOIX1","req","Le champ NOM est obligatoire");
frmvalidator.addValidation("NOM_CHOIX1","maxlen=32", "La longueur maximale pour entrer votre NOM est de 32 caracthères");
frmvalidator.addValidation("PRENOM_CHOIX1","req","Le champ NOM est obligatoire");
frmvalidator.addValidation("PRENOM_CHOIX1","maxlen=32", "La longueur maximale pour entrer votre NOM est de 32 caracthères");
break;
case 2:
d2.style.display='inline';
frmvalidator.addValidation("NOM_CHOIX2","req","Le champ NOM est obligatoire");
frmvalidator.addValidation("NOM_CHOIX2","maxlen=32", "La longueur maximale pour entrer votre NOM est de 32 caracthères");
frmvalidator.addValidation("PRENOM_CHOIX2","req","Le champ NOM est obligatoire");
frmvalidator.addValidation("PRENOM_CHOIX2","maxlen=32", "La longueur maximale pour entrer votre NOM est de 32 caracthères");
break;
}
}
</script>
benetophe
Messages postés14Date d'inscriptionsamedi 20 décembre 2008StatutMembreDernière intervention22 mai 2015 20 mai 2009 à 11:52
Salut à tous,
J'ai encore un soucis....
J'ai essayé plusieurs scripts de vérification et aucun ne passent avec des champs cachés... Soit ils me font des erreurs aléatoires (dans IE) soit ils me prennent en compte la vérification du champ même si celui-ci n'est pas sélectionné...
Si une âme charitable voulait bien m'aider, ce serait super sympa.
<script>
function trait()
{ var d1=document.getElementById('CHOIX1');
var d2=document.getElementById('CHOIX2')
d1.style.display="none";
d2.style.display="none";
switch ( document.getElementById("TYPE_CHOIX").selectedIndex )
{ case 1:
d1.style.display='inline';
var frmvalidator = new Validator("myform");
frmvalidator.EnableMsgsTogether();
frmvalidator.addValidation("NOM_CHOIX1","req","Le champ NOM est obligatoire");
frmvalidator.addValidation("NOM_CHOIX1","maxlen=32", "La longueur maximale pour entrer votre NOM est de 32 caracthères");
frmvalidator.addValidation("PRENOM_CHOIX1","req","Le champ NOM est obligatoire");
frmvalidator.addValidation("PRENOM_CHOIX1","maxlen=32", "La longueur maximale pour entrer votre NOM est de 32 caracthères");
break;
case 2:
d2.style.display='inline';
var frmvalidator = new Validator("myform");
frmvalidator.EnableMsgsTogether();
frmvalidator.addValidation("NOM_CHOIX2","req","Le champ NOM est obligatoire");
frmvalidator.addValidation("NOM_CHOIX2","maxlen=32", "La longueur maximale pour entrer votre NOM est de 32 caracthères");
frmvalidator.addValidation("PRENOM_CHOIX2","req","Le champ NOM est obligatoire");
frmvalidator.addValidation("PRENOM_CHOIX2","maxlen=32", "La longueur maximale pour entrer votre NOM est de 32 caracthères");
break;
}
}
</script>
<select name="TYPE_CHOIX" id="TYPE_CHOIX" style="FONT-SIZE: 9pt; FONT-FAMILY: Verdana, Arial, Geneva;" OnChange="trait();">
<option value="" selected="selected">Merci de faire un choix</option>
<option value="CHOIX">Locapass</option>
<option value="CHOIX1">Personne morale</option>
<option value="CHOIX2">Personne physique</option>
</select>
Nom : *
Prénom : *
Nom : *
Prénom : *
</FORM>
<script language="JavaScript" type="text/javascript">
var frmvalidator = new Validator("myform");
frmvalidator.EnableMsgsTogether();
frmvalidator.addValidation("DATE_ENTREE","req","Le champ DATE D'ENTREE est obligatoire");
frmvalidator.addValidation("DATE_SORTIE","req","Le champ DATE DE SORTIE est obligatoire");
</script>
Je n'ai pas voulu mettre le code en entier car le post aurai fait 3km de long....
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 21 mai 2009 à 14:41
tes script de vérifications testent ce qu'ils veulent !
je suis sur qu'ils tiennent aucun compte de tes "choix"... automatiquement !!!!
tu dois les adapter et ne contrôler que ce qui t'arrange en
fonction des "sélections"...
déjà dit :
switch ( document.getElementById("TYPE_CHOIX").selectedIndex )
{ case 1:
contrôles des champs nécessaires si choix de l'option 1
break;
case 2:
contrôles des champs nécessaires si choix de l'option 2
break;
.....
}
benetophe
Messages postés14Date d'inscriptionsamedi 20 décembre 2008StatutMembreDernière intervention22 mai 2015 21 mai 2009 à 17:28
Sur le 2eme script, le fait de dire si tel ou tel champ doit être vérifié se fait par l'ajout de require="true" à l'intérieur de la balise. Je ne vois pas comment l'insérer dans case 1:.....
Sur le 1er script, comme les tags de vérifications sont indépendants des balises, je peux les mettre à cet endroit. Par contre, cela me provoque des erreurs aléatoires avec IE7. Par contre je n'ai pas ces erreurs sous Firefox... (vive IE7 )
J'avais bien repris tes conseils qui marchent parfaitement sous Firefox.
Le soucis que j'ai, c'est que le navigateur le plus courant est Internet Explorer... Donc je ne peux pas le zapper.
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 22 mai 2009 à 08:33
>>le fait de dire si tel ou tel champ doit être vérifié se fait par
l'ajout de require="true"
>>à l'intérieur de la balise. Je ne vois pas
comment l'insérer dans case 1:.....
je ne connais pas jquery ( et je ne tiens pas à connaitre ),
mais il y a moyen de le faire, c'est sûr, ou alors il faut abandonner ce machin.
>> Par contre, cela me provoque des erreurs aléatoires avec IE7.
car tu ne codes pas comme il faut !
>>vive IE7
tous les navigateurs sont égaux au niveau des bugs : ils n'en ont pas,
c'est toujours celui qui code qui se plante ( et qui accuse ses outils )
@+