11521 sujets

JavaScript, DOM et API Web HTML5

Bonjour, j’essaye de réaliser un script de tarification par kilomètre, l’adresse de départ étant toujours la même et adresse d’arrivé changeante. J’aimerais mettre en place une grille tarifaire c’est-à-dire : entre 0 et 5 km gratuit, entre 5.01 et 10 km à 5€ et plus de 10.01 à 0.50€ par kilomètre , mais cela ne fonctionne pas
Voici mon script :

<!DOCTYPE html>
<html>
<head>
	<title>ess</title>
</head>
<p>Adresse d'arrivé<input id="Distance" name="Distance" required="" type="text"></p>
<p></p><input type="button" onclick="calculer();" value="Calculer" /></p>
<script type="text/javascript">
 function calculer(){
   
   var Distance = document.getElementById('distance').value;
   var Tarifs = document.getElementById('Tarifs');
   //ici ton code de calcul...
   var X = parseFloat(Distance);
   var tarifKM;
   console.log("Distance :"+Distance);
   console.log("X :"+X);
   if(X>=1 && X<=5){
     tarifKM = 0X;
   }
   if(X>5.01 && X<=10){
     tarifKM = 5*X;
   }
   if(X>=10.01 && X<=){
       tarifKM = 0.50*X;
     }
   }
  var resultat = tarifKM
  Tarifs.value = resultat;
 }
</script>
</html>

Merci d'avance
Modifié par vinkey (17 Jul 2020 - 02:24)
Modérateur
Bonjour,

il y a pleins de problèmes:

Il manque la balise <body>

input id="Distance"
document.getElementById('distance')
Une majuscule dans un cas pas dans l'autre.

document.getElementById('Tarifs');
Il n'y a aucun élément avec l'id «Tarifs»
Modifié par kustolovic (17 Jul 2020 - 10:16)
Bonjour,

C'est normal pour l'élément id "Tarif", car j'aimerais que le script calcul le tarif de chez moi jusqu'à l'adresse de destination tout en rentrant l'adresse de destination. J'ai essayé comme ça:
<!DOCTYPE html>
<html>
<head>
	<title>ess</title>
</head>
<body>

<p>Adresse d'arrivé<input id="Distance" name="Distance" required="" type="text"></p>

<p></p><input type="button" onclick="calculer();" value="Calculer" /></p>
</body>
<script type="text/javascript">
 function calculer(){
   input id="Distance"
   document.getElementById('distance')
   var Distance = document.getElementById('distance').value;
    //ici ton code de calcul...
   var X = parseFloat(Distance);
   var tarifKM;
   console.log("Distance :"+Distance);
   console.log("X :"+X);
   if(X>=1 && X<=5){
     tarifKM = 0X;
   }
   if(X>5.01 && X<=10){
     tarifKM = 5*X;
   }
   if(X>=10.01 && X<=){
       tarifKM = 1.90*X;
     }
   }
  var resultat = tarifKM
  Tarifs.value = resultat;
 }
</script>
</html>

Merci,
Modifié par vinkey (17 Jul 2020 - 18:17)
Modérateur
Salut,

Il faudrait que tu regardes l'api de googlemap ou bingmap ou openstreet