Erreur syntaxe conditions sur un formulaire
Erreur syntaxe conditions sur un formulaire
Bonjour
J'ai un autre soucis avec mon formulaire il n'est plus fonctionnel la console m'indique : SyntaxError: missing ) after condition[En savoir plus].
j'ai apporté des modifications le js pour retirer les NaN... avec des conditions
https://jsfiddle.net/kd1gsc2z/7/
merci de votre aide
J'ai un autre soucis avec mon formulaire il n'est plus fonctionnel la console m'indique : SyntaxError: missing ) after condition[En savoir plus].
j'ai apporté des modifications le js pour retirer les NaN... avec des conditions
https://jsfiddle.net/kd1gsc2z/7/
merci de votre aide
Re: Script formulaire non fonctionnel
Bonjour/Bonsoir,
Chrome me donne dans la console un violent "Uncaught SyntaxError: Unexpected token !"
je clique sur le nom du fichier à droite du message d'erreur, et je vois immédiatement que sur cette ligne dans le JS il y a un gros pépin évident :
Peut être que tu es sur un navigateur différent et que c'est pour ça que le message est différent de ton côté.
En tout cas, il y a des chances qu'ils indiquent tous les deux la même ligne
Chrome me donne dans la console un violent "Uncaught SyntaxError: Unexpected token !"

Code : Tout sélectionner
else if (Mail ! == "" && testMail <= 0) {
En tout cas, il y a des chances qu'ils indiquent tous les deux la même ligne

Re: Erreur syntaxe conditions sur un formulaire
bsr Frosty !
merci pour la reponse. jai telechargé brackets, et jai vu 178 problemes! j'ai essayé de corriger mais je ne comprends pas tout
102+ problèmes :
×
JSLint (9)
1 Expected 'VerifFormulaire' at column 1, not column 2. VerifFormulaire === 0;
1 'VerifFormulaire' was used before it was defined. VerifFormulaire === 0;
1 Expected an assignment or function call and instead saw an expression. VerifFormulaire === 0;
3 Missing 'use strict' statement. var erreur === 0;
3 Expected 'var' at column 5, not column 4. var erreur === 0;
[edit Frosty: je vire une bonne partie du log, c'est pas fondamental pour la résolution de tes problèmes et ça fait scroller pendant des heures pour aller à la fin de la discussion
...]
25 Expected an operator and instead saw '!'. (E033) else if(Mail ! === "" && testMail <=== 0) {
25 Expected an identifier and instead saw '=='. (E030) else if(Mail ! === "" && testMail <=== 0) {
25 Unrecoverable syntax error. (15% scanned). (E041) else if(Mail ! === "" && testMail <=== 0) {
parfois je corrige et ca diminue les erreurs parfois ca ne fait rien
par exemple : Missing 'use strict' statement. var erreur === 0; ?? je comprend pas qu'est qi'il faut faire? tu vois..
merci de ton aide
merci pour la reponse. jai telechargé brackets, et jai vu 178 problemes! j'ai essayé de corriger mais je ne comprends pas tout
102+ problèmes :
×
JSLint (9)
1 Expected 'VerifFormulaire' at column 1, not column 2. VerifFormulaire === 0;
1 'VerifFormulaire' was used before it was defined. VerifFormulaire === 0;
1 Expected an assignment or function call and instead saw an expression. VerifFormulaire === 0;
3 Missing 'use strict' statement. var erreur === 0;
3 Expected 'var' at column 5, not column 4. var erreur === 0;
[edit Frosty: je vire une bonne partie du log, c'est pas fondamental pour la résolution de tes problèmes et ça fait scroller pendant des heures pour aller à la fin de la discussion

25 Expected an operator and instead saw '!'. (E033) else if(Mail ! === "" && testMail <=== 0) {
25 Expected an identifier and instead saw '=='. (E030) else if(Mail ! === "" && testMail <=== 0) {
25 Unrecoverable syntax error. (15% scanned). (E041) else if(Mail ! === "" && testMail <=== 0) {
parfois je corrige et ca diminue les erreurs parfois ca ne fait rien
par exemple : Missing 'use strict' statement. var erreur === 0; ?? je comprend pas qu'est qi'il faut faire? tu vois..
merci de ton aide
Re: Erreur syntaxe conditions sur un formulaire
Je pense qu'avant de recourir à des outils d'analyse de code comme JSLint / JSHint, il faudrait déjà que tu parviennes à faire tourner ton script + formulaire simplement à partir d'exemples, de documentations/références JS, et de la console JavaScript de ton navigateur.
Une fois que ça te convient, tu sauvegardes et ensuite tu peux passer du temps à peaufiner/améliorer (ca aide à éviter de futurs problèmes si ton projet grossit).
Le 'use strict' c'est entre autres pour empêcher l'utilisation de variables non déclarées. Si tu fais une recherche Google "use strict JavaScript" ou "strict mode JavaScript" tu trouveras toutes les explications sur ce que ca fait et comment s'en servir.
Pas indispensable pour faire ton 1er "prototype" cela dit. si tu ne connais pas, ne t' embête pas avec ca pour le moment, même si l'emploi du mode strict me paraît globalement une bonne pratique.
A voir aussi quelle est sa compatibilité avec les navigateurs actuels, pour ma part je m'en suis servi pour des développements sur Node.js donc hors navigateur.
Une fois que ça te convient, tu sauvegardes et ensuite tu peux passer du temps à peaufiner/améliorer (ca aide à éviter de futurs problèmes si ton projet grossit).
Le 'use strict' c'est entre autres pour empêcher l'utilisation de variables non déclarées. Si tu fais une recherche Google "use strict JavaScript" ou "strict mode JavaScript" tu trouveras toutes les explications sur ce que ca fait et comment s'en servir.
Pas indispensable pour faire ton 1er "prototype" cela dit. si tu ne connais pas, ne t' embête pas avec ca pour le moment, même si l'emploi du mode strict me paraît globalement une bonne pratique.
A voir aussi quelle est sa compatibilité avec les navigateurs actuels, pour ma part je m'en suis servi pour des développements sur Node.js donc hors navigateur.
Re: Erreur syntaxe conditions sur un formulaire
mon principal probleme et je m'en sors pas car par exemple jai une accolade dans le if is NaN
****
et jai 2 if qui se suivent j'ai mal indenter :
c'est là que je crois que c'est faux
****
Code : Tout sélectionner
if (isNaN(Valeur3)) { Valeur3 = 0; }{
choix = document.getElementById("resa3").value;
et jai 2 if qui se suivent j'ai mal indenter :
Code : Tout sélectionner
if (Valeur3!=''){
if (choix==='demijour")
Valeur3 = Valeur3*8; }
c'est là que je crois que c'est faux
Re: Erreur syntaxe conditions sur un formulaire
Code : Tout sélectionner
if (isNaN(Valeur3)) { Valeur3 = 0; }{
Ensuite pour les 2 "if" imbriqués, l'indentation importe peu pour le navigateur. Même si tu écris tout sur une ligne mais que c'est syntaxiquement correct il comprendra.
Par au niveau du 2ème bout de code il y a quand même un gros pépin flagrant : tu ne peux pas faire commencer une chaîne par un guillemet simple (') et la terminer par un guillemet double (") ça doit de donner une erreur de syntaxe dans la console :
Code : Tout sélectionner
if (choix==='demijour")
Si tu laisses passer ce genre d'erreur, que tu n'arrives pas à imbriquer des "if" correctement etc. je t'encourage fortement à lire des tutos comme ceux de ce site (en cours de mise à jour car ils sont un peu anciens, mais la syntaxe enseignée et les exemples indiqués doivent toujours fonctionner) et chercher des exemples de "formulaire javascript" sur Google pour t'en inspirer, ça t'évitera d'avoir de grosses erreurs de syntaxe qui risquent de casser fréquemment le fonctionnement de ton script dès que tu voudras le modifier/améliorer
Fais aussi des sauvegardes régulières de ton script lorsque tu arrives à le faire fonctionner, pour pouvoir toujours repartir d'un point "sûr" si tu casses quelque chose et que tu n'arrive pas à comprendre pourquoi ça ne fonctionne plus même en ayant regardé la console.
Re: Erreur syntaxe conditions sur un formulaire
dans brackets il m'a supprimé des erreurs en faisant comme ca pr rapports aux guillemets :
mais tu as raison je vais pas le laisser comme ca
oui tu viens de me faire penser jai gardé ma version d'origine qui est fonctionnel, je vais la recopier et la retravailler pas a pas, car la je m'en sors plus..
brackets est lié à jslint ca embrouille plus qu'autre chose je crois.
merci pour tes conseils
Code : Tout sélectionner
if (choix==='demijour")
oui tu viens de me faire penser jai gardé ma version d'origine qui est fonctionnel, je vais la recopier et la retravailler pas a pas, car la je m'en sors plus..
brackets est lié à jslint ca embrouille plus qu'autre chose je crois.
merci pour tes conseils
Re: Erreur syntaxe conditions sur un formulaire
Oui je pense que tu peux laisser tomber brackets pour le moment
Re: Erreur syntaxe conditions sur un formulaire
salut
j'ai retrouvé mon script fonctionnel, le seul probleme c'est avec les conditions j'ai donc essayé pas a pas mais ca ne marche toujours pas :
j'ai retrouvé mon script fonctionnel, le seul probleme c'est avec les conditions j'ai donc essayé pas a pas mais ca ne marche toujours pas :
Code : Tout sélectionner
(isNaN(Valeur)) { Valeur = 0; }
choix = document.getElementById("resa1").value;
if (choix===''demijour') {
Valeur = Valeur*8;
} // fin du premier if
} // fin du second if
else
if (choix=="jour"){
Valeur = Valeur*15;
else if (choix=="repas"){
Valeur = Valeur*7;
document.getElementById("stot1").value = Valeur+" euros" ;
}else
{Valeur = 0};
var Valeur2=0;
Valeur2 = parseInt(document.getElementById("nombre2").value);
if (isNaN(Valeur2)) {
Valeur2= 0;
choix = document.getElementById("resa3").value;
}
if (choix==='demijour') {
Valeur2 = Valeur2*8;
} // fin du premier if
} // fin du second if
}else
if (choix=="jour")
Valeur2 = Valeur2*15;}
else if (choix=="repas"){
Valeur2 = Valeur2*7;
document.getElementById("stot2").value = Valeur2+" euros" ;
}else
{valeur2 = 0};
var Valeur3, totalht, tva, totalttc;
Valeur3 = parseInt(document.getElementById("nombre3").value);
if (isNaN(Valeur3)) {
Valeur3 = 0;
choix = document.getElementById("resa3").value;
}
if (choix==='demijour') {
Valeur3 = Valeur3*8;
} // fin du premier if
} // fin du second if
else if (choix=="jour"){
Valeur3 = Valeur3*15};
else if (choix=="repas"){
Valeur3 = Valeur3*7;
document.getElementById("stot3").value = Valeur3+" euros" ;
}else
{Valeur3 = 0};
Re: Erreur syntaxe conditions sur un formulaire
Il y a une erreur de syntaxe évidente sur une des premières lignes :
Tu la vois ?
Là encore, la console devrait indiquer une erreur (=> la prochaine fois que la console affiche une erreur, et que tu n'arrives pas à résoudre le problème correspondant, serait bien de copier coller le message d'erreur dans la discussion)
A part ça il manque carrément un "if" tout au début mais je suppose qu'il n'a pas été "pris" dans ton copier-coller...
Il faudrait aussi indenter tout ça de manière un peu plus lisible, car même si le navigateur s'y retrouve, ça m'éclate les yeux et le cerveau
Dans l'exemple qui suit, on comprend tout de suite quel bout de code va s'exécuter dans quel bloc "if" ou "else" :
Conseil : utiliser un éditeur de texte/code avec coloration syntaxique et qui permet d'indenter du code sélectionné avec tab ou "désindenter" avec shift+tab, comme Sublime Text ou Atom
Entre autres, avec la coloration syntaxique lorsque les guillemets autour des chaines de caractères ne sont pas bons, on le voit tout de suite.
Code : Tout sélectionner
if (choix===''demijour') {
Là encore, la console devrait indiquer une erreur (=> la prochaine fois que la console affiche une erreur, et que tu n'arrives pas à résoudre le problème correspondant, serait bien de copier coller le message d'erreur dans la discussion)
A part ça il manque carrément un "if" tout au début mais je suppose qu'il n'a pas été "pris" dans ton copier-coller...
Il faudrait aussi indenter tout ça de manière un peu plus lisible, car même si le navigateur s'y retrouve, ça m'éclate les yeux et le cerveau

Dans l'exemple qui suit, on comprend tout de suite quel bout de code va s'exécuter dans quel bloc "if" ou "else" :
Code : Tout sélectionner
if (truc === bidule) {
variable1 = "chaine";
alert("toto");
if (tata === titi) {
console.log("chouette");
}
} else {
machin = chose;
}
Entre autres, avec la coloration syntaxique lorsque les guillemets autour des chaines de caractères ne sont pas bons, on le voit tout de suite.