Code JavaScript sur DreamWeaver

Résolu/Fermé
Yuuto Messages postés 21 Date d'inscription dimanche 12 mai 2013 Statut Membre Dernière intervention 8 décembre 2013 - 28 mai 2013 à 18:52
prosthetiks Messages postés 1189 Date d'inscription dimanche 7 octobre 2007 Statut Membre Dernière intervention 12 juin 2020 - 29 mai 2013 à 21:35
Bonjour,

Je vous explique mon problème:

Je suis une formation à distance de Webmaster/Webdesigner depuis peu.
J'ai actuellement un cours sur le JavaScript et à la fin de ce cours une application à réaliser:

Ecrire le script qui correspond à la demande suivante :
Si le montant de la facture est compris entre 15 euro et 50 euros, on bénéficie de 10 euros de remise, si le montant de la facture se situe entre 51 et 99, on bénéficie de 20 euros de remise. Si le montant de la facture est compris entre 100 et 149 euros, la remise est de 30 euros. Si le montant de la facture se situe entre 150 et 199 euros le montant de la remise est de 40 euros. Si c'est au-delà, la remise se chiffre à 50 euros.
Vous ferez en sorte que le montant de la remise s'affiche sur la page, mais également sous forme de message d'avertissement (voir ci-dessous).

Voici le code que j'ai tapé:

<html>
<head>
<title> exercice1</title>
<SCRIPT language="JavaScript">

var valeur=100;

if((valeur>=15)&& (valeur<=50))
{
document write("10 <BR>"); - ICI-
}
else if((valeur>=51)&& (valeur<=99))
{
document write("20 <BR>");
}
else if((valeur>=100)&& (valeur<=149))
{
document write("30 <BR>");
}
else if((valeur>=150)&& (valeur<=199))
{
document write("40 <BR>");
}
else if((valeur>=200))
{
document write("50 <BR>");
}
</SCRIPT>

<SCRIPT>
function avertissement() {
alert('La remise est de 10 euros');
}
</SCRIPT>
</head>
<body onload = 'avertissement();'>

<body>
La remise est de 10 euros
</body>
</html>

Il me resort cependant une erreur à la ligne 10 (cf: -ICI-) me disant qu'il y a une erreur de syntaxe.
Je ne comprends pas d'ou provient l'erreur, j'ai même re consulté l'exemple donné dans le cours et rien à faire, ça ne marche pas.

Autre chose, je n'arrive pas vraiment à comprendre l'utilité de "var", j'ai mis la même valeur que dans l'exemple je ne savais pas quoi mettre d'autre, cela pourrait-il causer l'erreur de syntaxe?

Quelqu'un pourrait-il m'expliquer le problème?

Merci d'avance!

A voir également:

4 réponses

Yuuto Messages postés 21 Date d'inscription dimanche 12 mai 2013 Statut Membre Dernière intervention 8 décembre 2013 3
28 mai 2013 à 19:07
up
0
tryan44 Messages postés 1288 Date d'inscription mardi 24 janvier 2012 Statut Membre Dernière intervention 26 octobre 2014 220
28 mai 2013 à 19:30
Salut,

Tester ça :

<script type="text/javascript">
function voir(){
    //Montant saisi
	var montant = document.getElementById('chiffre').value;
	//Ou va s'afficher la réduction
	var affiche = document.getElementById('affiche');
	alert('Montant saisi : '+montant);
	if(montant >= 15 && montant <= 50)
	{ 
		affiche.innerText = '10 euros de remise';
		alert(affiche.innerText);
	}
	if(montant >= 51 && montant <= 99){
		affiche.innerText = '20 euros de remise';
		alert(affiche.innerText);
	}
}
</script>
<form method="post">
<input type="text" value="" id="chiffre"/>
<input type="button" value="Calculer" onclick="voir();"/>
<span id="affiche"></span>
</form>

0
Yuuto Messages postés 21 Date d'inscription dimanche 12 mai 2013 Statut Membre Dernière intervention 8 décembre 2013 3
28 mai 2013 à 19:48
Merci de votre réponse, le problème c'est qu'il y a ici des fonctions qui ne sont pas présentes dans mon cours, je ne devrais donc pas être en mesure de les connaitre.

Voici l'exemple concret de mon cours:

Dans notre exemple, nous avons pris une valeur fixe de 100.
Cela devrait logiquement nous retourner la valeur suivante : 20
En effet, nous avons dit qu'entre 100 et 199, on bénéficie de 20 euros de remise. Nous appellerons ce document remise.htm
Ce code donnera dans le bloc-notes :
<html>
<head>
<title>Conditions</title> <SCRIPT language= "JavaScript">
var valeur = 100;
if ((valeur >= 0) && (valeur<= 99)) {
document.write("10 <BR>");
}
else if ((valeur >= 100) && (valeur<= 199)) {
document.write("20<BR>");
}
else
{ document.write("30<BR>"); }
</SCRIPT> </head> <body> </body> </html>

Or j'ai retapé ce texte en modifiant les valeurs et rien ne sort sur la page excepté le message d'alerte alors que si je tape ce code dans une nouvelle fenêtre DW, la page qui s'ouvre est bien accompagnée du chiffre 20, je ne comprends pas pourquoi ça ne marche pas avec mon code.
J'ai même enlevé le message d'alerte et la partie <body> mais rien n'y fait, ça n'apparait toujours pas.
0
tryan44 Messages postés 1288 Date d'inscription mardi 24 janvier 2012 Statut Membre Dernière intervention 26 octobre 2014 220
28 mai 2013 à 20:33
Votre code tel que vous l'avez écrit fonctionne chez moi en utilisant Notepad++.
Je ne suis pas très doué en Javascript, néanmoins voici un exemple qui écrit le texte dans la page, qui lance une simple alert et une seconde alert via la fonction :
<body onload="avertissement(remise);"> 
<script type="text/javascript">
function avertissement(remise) { 
	alert('La remise est de '+remise+' euros'); 
}

var valeur = 100; 

if ((valeur >= 0) && (valeur <= 99)){ 
    //on écrit la valeur
	document.write("10"); 
	//simple alert
	alert('10');
	//alert via la fonction avertissement()
	avertissement('10');
} 
else if ((valeur >= 100) && (valeur <= 199)){ 
	document.write("20"); 
	alert('20');
	avertissement('20');
} 
else{ 
	document.write("30"); 
	alert('30');
	avertissement('30');
} 
</script>

0
Bonsoir, j'ai fais un copier coller de votre et chez moi il y avait bien une erreur ligne 9.

J'ai modifié à ma façon car on code tous différemment et il y avait toujours cette erreur.


Je pense que ce code et vous allez me dire si je me trompe, vous l'avez copier collé depuis un site. En effet, j'ai déjà eu des erreurs inexpliqué de ce type. Il existe des espaces d'épaisseur nulle et comme leurs nom l'indique on les voit pas. Mais l'ordinateur lui voie une suite de caractère hexadécimal qui provoque une erreur.

J'ai juste récris cette ligne et ça a fonctionné alors que les autres étaient pareil.

<html>
 <head>
  <title> exercice1</title>
  <SCRIPT language="JavaScript">
      var valeur=parseFloat(prompt("entrer une somme"));

   if((valeur>=15)&& (valeur<=50))
   {
   document.write('10' + '<br>');
   alert("10");
   }
   else if((valeur>=51)&& (valeur<=99))
   {
   document.write('20' + '<br>');
   alert("20");
   }
   else if((valeur>=100)&& (valeur<=149))
   {
   document.write('30' + '<br>');
   alert("30");
   }
   else if((valeur>=150)&& (valeur<=199))
   {
   document.write('40' + '<br>');
   alert("40");
   }
   else if((valeur>=200))
   {
   document.write('50' + '<br>');
   alert("50");
   }</SCRIPT>
  
 </head>
 <body>
 <body>
  
 </body>
</html>


¨'°ºO׺°"~'"°º×Oº°'¨Linux est le noyau --*^v^-^v^*-- et Windows les pépins(¯'·o©º°¨¨°©o)·
0
Utilisateur anonyme
28 mai 2013 à 21:31
https://www.developpez.net/forums/d1298727/autres-langages/xml-xsl-soap/valider/validation-dtd-xsd/


c'est dans ce post que j'ai appris cela (désolé c'est un autre forum :( )
0
tryan44 Messages postés 1288 Date d'inscription mardi 24 janvier 2012 Statut Membre Dernière intervention 26 octobre 2014 220
29 mai 2013 à 07:42
Bien vue pour les caractères invisibles (hexadécimal) si c'est bien ça qui lui pose problème :).
0
Yuuto Messages postés 21 Date d'inscription dimanche 12 mai 2013 Statut Membre Dernière intervention 8 décembre 2013 3
29 mai 2013 à 18:03
Bonjour,

En effet j'ai recopié ce code directement depuis mon cours cependant ce que je ne comprends pas, lorsque je copie/colle l'original, aucune erreur ne ressort
(<html>
<head>
<title>Conditions</title> <SCRIPT language= "JavaScript">
var valeur = 100;
if ((valeur >= 0) && (valeur<= 99)) {
document.write("10 <BR>");
}
else if ((valeur >= 100) && (valeur<= 199)) {
document.write("20<BR>");
}
else
{ document.write("30<BR>"); }
</SCRIPT> </head> <body> </body> </html>
c'était celui-ci)

Je l'ai ensuite modifié directement à partir de l'exemple pour mettre mes valeurs mais à partir de là rien à faire avec cette ligne 10!
J'ai essayé plusieurs fois de la réécrire comme vous me l'avez conseillé et ça n'a rien changé, je pense que je vais réécrire tout le code dans une nouvelle page!
0
Utilisateur anonyme
29 mai 2013 à 18:11
ben moi j'ai juste effacé cette ligne

 document.write('10' + '<br>');


et c'est repartis ^^
0
Yuuto Messages postés 21 Date d'inscription dimanche 12 mai 2013 Statut Membre Dernière intervention 8 décembre 2013 3
29 mai 2013 à 18:28
:o!
Quand j'ai essayé de l'effacer, ça me mettait l'erreur au document.write suivant... Injustice!

Enfin peu importe, je viens de changer de document, et tout retaper pour la n-ième fois et ça marche enfin parfaitement!
Quel soulagement, j'en pouvais plus!

Merci de votre aide à tous :D
0