Fonction if/else Javascript

Golfaddict Messages postés 5 Date d'inscription samedi 19 novembre 2011 Statut Membre Dernière intervention 29 novembre 2011 - 20 nov. 2011 à 14:18
Golfaddict Messages postés 5 Date d'inscription samedi 19 novembre 2011 Statut Membre Dernière intervention 29 novembre 2011 - 29 nov. 2011 à 23:18
Bonjour à tous,

Je suis en train de créer un bon de commande électronique "poussé" pour un client très exigent et je n'ai pas du tout l'habitude d'écrire des scripts. Votre aide me serait donc très précieuse !!!

Voilà le topo : j'ai créé mon bon de commande sous forme de formulaire PDF dans Adobe Acrobat Pro.

La grille à remplir par le client :


Le principe : le client rentre les quantités par taille et par coloris. le prix unitaire est fixe. Pour chaque colori de sweat, la quantité totale (nom du champ QUANTITE) et le prix total (nom du champ TOTAL) sont calculés automatiquement grâce à une formule intégrée dans Adobe Acrobat Pro.

Là où ça se complique : je ne sais pas écrire le script pour calculer automatiquement les frais de ports (nom du champ PORT) en fonction du nombre total d'article commandé (nom du champ invisible QUANTITE TOTALE).

Je dois utiliser une fonction javascript pour automatiser cette action. Après avoir navigué sur quelques tutoriels, la fonction "if/else" me paraîtrait adaptée, mais je ne sais pas du tout comment la formuler. Pourriez-vous svp m'aider à écrire ce script ?!

Par avance merci pour votre compréhension. N'hésitez pas à me demander des précisions si mes explications sont trop vagues

4 réponses

Golfaddict Messages postés 5 Date d'inscription samedi 19 novembre 2011 Statut Membre Dernière intervention 29 novembre 2011
20 nov. 2011 à 14:36
Re-bonjour. Pour vous donner une idée de mes compétences et de l'avancée de mes recherches, voici l'une des nombreuses formules que j'ai tenté d'utiliser :

if (champ "UANTITE TOTALE" = 1)
{
"6,60";
}
else if (champ "UANTITE TOTALE" = 2)
{
"7,95";
}

ect...

else
{
"0,00";
}

Mais après plusieurs tentatives je suis vraiment bloqué
0
@karamel Messages postés 1855 Date d'inscription vendredi 9 mai 2008 Statut Modérateur Dernière intervention 18 avril 2024 153
20 nov. 2011 à 22:27
bonjour

quand on fait un teste il faut mettre deux fois le signe egale

if (champ "UANTITE TOTALE" == 1)
{
"6,60";
}

ensuite je ne connait pas le fonctionnement precis du javascript dans acrobat et surtout coment on recupere la valeur du champ port dans une page web on a accès a la valeur d'un champ grace a ce que l'on appel le DOM en faisant document.getElementById("le _nom_du_champ").value

le script ressemblerait a ca

var la_valeur=document.getElementById("le _nom_du_champ").value

if (la_valeur == 1)
{
"6,60";
}
else if (la_valeur == 2)
{
"7,95";
}

ect...

else
{
"0,00";
} 
0
Golfaddict Messages postés 5 Date d'inscription samedi 19 novembre 2011 Statut Membre Dernière intervention 29 novembre 2011
21 nov. 2011 à 20:57
Merci pour votre réponse ! Je vais essayer et je reviendrais pour vous dire si ça a fonctionné. Cdt
0
Golfaddict Messages postés 5 Date d'inscription samedi 19 novembre 2011 Statut Membre Dernière intervention 29 novembre 2011
29 nov. 2011 à 23:18
Après plusieurs essais où il ne s'est rien passé, voici la formule sur laquelle je bloque :

var champ "QUANTITE TOTALE"=document.getElementById("PORT").value

if (champ "QUANTITE TOTALE" == 1)
{
"6,60";
}
else if (champ "QUANTITE TOTALE" == 2)
{
"7,95";
}
else if (champ "QUANTITE TOTALE" == 3)
{
"8,95";
}
else if (champ "QUANTITE TOTALE" == 4)
{
"9,95";
}
else if (champ "QUANTITE TOTALE" == 5)
{
"11,95";
}
else if (champ "QUANTITE TOTALE" == 6)
{
"11,95";
}
else if (champ "QUANTITE TOTALE" == 7)
{
"11,95";
}
else if (champ "QUANTITE TOTALE" == 8)
{
"13,95";
}
else if (champ "QUANTITE TOTALE" == 9)
{
"13,95";
}
else if (champ "QUANTITE TOTALE" == 10)
{
"13,95";
}
else
{
"0,00";
}

Le message d'erreur affiché est le suivant :
SyntaxError: missing ; before statement
1: à la ligne 2

J'ai essayé de placer ; un peu partout dans les premières lignes mais rien n'y fait, il m'affiche toujours le même message d'erreur.

Et puis je ne suis pas certain d'avoir correctement écrit ma formule dans sa globalité... Avez-vous une idée de ce qui ne va pas ?!

Merci d'avance pour vos retours !!!
0
Rejoignez-nous