débuggage de code pour validation de formulaire
Bonjour,
En codant le JavaScript dans le formulaire un peu par un peu, mon code marchait, mais lorsque je l'ai mis à part dans un fichier, plus aucun effet !
(test : je n'ai pas d'alerte "coucou", cf plus bas)
Je pense que j'ai fait une bourde
- soit dans la manœuvre de séparation (liens)
- soit en modifiant mon code par inadvertance
Je pense avoir trop l'habitude de voir ce code et c'est pourquoi je ne trouve pas l'erreur. Ainsi je fais appel à vous dans l'espoir que vous y voyiez plus clair :calim2:
Merci :ccool:
Dans mon fichier html j'ai ajouté :
Code:
<script type="javascript" src="dirjs/form.js"></script>
c'est le lien de mon fichier js à partir du dossier contenant mon fichier html
et voilà le contenu de form.js :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192
| String.prototype.trim = function(){
return this.replace(/(?:^\s+|\s+$)/g, "");
}
function verif_formulaire(){
alert("Coucou !");
// vérification saisie SOUHAIT
if (document.formulaire.Souhait.value == "--- Faites_votre_choix ---"){
alert("Vous avez oublié de renseigner la rubrique SOUHAIT.");
document.formulaire.Souhait.focus();
return (false);
}
//verif saisie numero CB
if((isNAN(document.formulaire.NoCB.value))||(document.formulaire.NoCB.value.length != 16)){
alert("Le numéro de carte bleue est erroné ! Comment je vais vous arnaquer moi ?!");
document.formulaire.NoCB.focus();
return(false);
}
//verif mois et annee expiration CB
if ((isNaN(document.formulaire.MoisCB.value)) || (document.formulaire.MoisCB.value >12 || document.formulaire.MoisCB.value.length!=2)){
alert("Le MOIS D EXPIRATION que vous avez saisi est invalide ! Comment je vais vous arnaquer moi ?!");
document.formulaire.Mois.focus();
return (false);
}
if (isNaN(document.formulaire.AnneeCB.value) || ((document.formulaire.AnneeCB.value !="" && document.formulaire.AnneeCB.value <2010 ) || document.formulaire.AnneeCB.value.length!=4)){
alert("L'ANNEE D EXPIRATION que vous avez saisie est invalide ! Comment je vais vous arnaquer moi ?!")
document.formulaire.AnneeCB.focus();
return (false);
}
// vérification saisie TITRE QUESTION
if (document.formulaire.TitreQ.value == " Titre "){
alert("Vous avez oublié de renseigner la rubrique TITRE DE LA QUESTION.");
document.formulaire.TitreQ.focus();
return (false);
}
Ctrl = document.formulaire.TitreQ;
posPipe = Ctrl.value.indexOf('|',0);
if (posPipe != -1){
alert("Le TITRE DE LA QUESTION que vous avez saisi contient un caractère invalide !");
document.formulaire.TitreQ.focus();
return (false);
}
// vérification saisie VERBATIM
if (document.formulaire.Verbatim.value.trim() == ""){
alert("Vous avez oublié de renseigner la rubrique TEXTE LIBRE");
document.formulaire.Verbatim.focus();
return (false);
}
Ctrl = document.formulaire.Verbatim;
posPipe = Ctrl.value.indexOf('|',0);
if ( posPipe != -1){
alert("La zone TEXTE LIBRE que vous avez renseigné contient un caractère invalide !");
document.formulaire.Verbatim.focus();
return (false);
}
// vérification saisie EMAIL
Ctrl = document.formulaire.Email;
if (document.formulaire.Email.value.trim() == ""){
alert("Vous avez oublié de renseigner la rubrique ADRESSE ELECTRONIQUE.");
document.formulaire.Email.focus();
return (false);
}
posAt = Ctrl.value.indexOf('@',0);
posDot = Ctrl.value.indexOf('.',posAt+2);
posPipe = Ctrl.value.indexOf('|',0);
posEtoile = Ctrl.value.indexOf('*',0);
if (posEtoile != -1 || posPipe != -1 || posAt == -1 || posDot == -1 || (Ctrl.value.length - posDot < 3)){
alert("L'ADRESSE ELECTRONIQUE que vous avez saisie n'est pas valide");
document.formulaire.Email.focus();
return (false);
}
// vérification saisie CIVILITE
var radioType = document.getElementsByName("Civilite");
var checked = false;
for (var cpt = 0 ; (cpt < radioType.length) && !checked ; cpt++){
checked = checked || radioType[cpt].checked;
}
if (!checked){
alert("Vous avez oublié de renseigner la rubrique CIVILITE.");
return (false);
}
// vérification saisie NOM
if (document.formulaire.Nom.value.trim() == ""){
alert("Vous avez oublié de renseigner la rubrique NOM.");
document.formulaire.Nom.focus();
return (false);
}
Ctrl = document.formulaire.Nom;
posPipe = Ctrl.value.indexOf('|',0);
if ( posPipe != -1){
alert("Le NOM que vous saisi contient un caractère invalide");
document.formulaire.Nom.focus();
return (false);
}
// vérification saisie PRENOM
if (document.formulaire.Prenom.value.trim() == ""){
alert("Vous avez oublié de renseigner la rubrique PRENOM.");
document.formulaire.Prenom.focus();
return (false);
}
Ctrl = document.formulaire.Prenom;
posPipe = Ctrl.value.indexOf('|',0);
if (posPipe != -1){
alert("Le PRENOM que vous saisi contient un caractère invalide.");
document.formulaire.Prenom.focus();
return (false);
}
// vérification saisie JOUR MOIS ANNEE
if ((document.formulaire.Jour.value.trim()!="" && document.formulaire.Mois.value.trim()!="") && document.formulaire.Annee.value.trim()!="" ){
if (isNaN(document.formulaire.Jour.value) || (document.formulaire.Jour.value >31 || document.formulaire.Jour.value.length!=2)){
alert("Le JOUR que vous avez saisi est invalide");
document.formulaire.Jour.focus();
return (false);
}
if (isNaN(document.formulaire.Mois.value) || (document.formulaire.Mois.value >12 || document.formulaire.Mois.value.length!=2)){
alert("Le MOIS que vous avez saisi est invalide");
document.formulaire.Mois.focus();
return (false);
}
if (isNaN(document.formulaire.Annee.value) || ((document.formulaire.Annee.value !="" && document.formulaire.Annee.value <1900 ) || document.formulaire.Annee.value.length!=4)){
alert("L'ANNEE que vous avez saisie est invalide")
document.formulaire.Annee.focus();
return (false);
}
}
// vérification saisie CODE POSTAL
if (document.formulaire.cpostal.value.trim() == ""){
alert("Vous avez oublié de renseigner la rubrique CODE POSTAL.");
document.formulaire.cpostal.focus();
return (false);
}
if (document.formulaire.cpostal.value.length<5){
alert("Votre Code Postal est incorrect !");
document.formulaire.cpostal.focus();
return (false);
}
if (isNaN(document.formulaire.cpostal.value)){
alert("Votre Code Postal est incorrect !");
document.formulaire.cpostal.focus();
return (false);
}
// vérification saisie NOMBRE DE SOURIS
if ((isNaN(document.formulaire.souris.value))||(document.formulaire.souris.value.length<0)){
alert("Le nombre de souris est incorrect !");
document.formulaire.souris.focus();
return (false);
}
if ((isNaN(document.formulaire.smeca.value))||(document.formulaire.smeca.value.length<0)){
alert("Le nombre de souris mécaniques est incorrect !");
document.formulaire.smeca.focus();
return (false);
}
if (Number(document.formulaire.smeca.value) > Number(document.formulaire.souris.value)){
alert("ERREUR : Le nombre de souris mécaniques ne peut pas être supérieur au nombre de souris TOTALES !");
document.formulaire.souris.focus();
return (false);
}
// vérification saisie CONTACT
var radioType = document.getElementsByName("contact");
var checked = false;
for (var cpt = 0 ; (cpt < radioType.length) && !checked ; cpt++){
checked = checked || radioType[cpt].checked;
}
if (!checked){
alert("Vous avez oublié de renseigner la rubrique NEWSLETTER.");
return (false);
}
} |