(quel titre !)

Bonjour,

voilà: j'utilise l'API Google Maps (pas de souci) pour calculer des distances entre des points. Pour UN calcul, j'arrive a sortir le (bon) résultat dans UN div, prédéfini.
Mais si, pour plusieurs calculs, je prépare autant de div (avecun id unique bien sûr), et que j'uilise la même fonction, rien ne sort.

Dans un fichier js externe, j'ai:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
function getDistances(origin, destination, str_outputDIV)
{
	var str_outputDIV;
	var service = new google.maps.DistanceMatrixService();
	service.getDistanceMatrix(
	{
		origins: [origin],
		destinations: [destination],
		travelMode: google.maps.TravelMode.DRIVING,
		//transitOptions: TransitOptions,
		unitSystem: google.maps.UnitSystem.METRIC,
		durationInTraffic: true,
		avoidHighways: true,
		avoidTolls: true
	}, callback);
 
}
 
function callback(response, status)
{
	if (status != google.maps.DistanceMatrixStatus.OK)
	{
		alert('Error was: ' + status);
	}
	else
	{
		var origins = response.originAddresses;
		var destinations = response.destinationAddresses;
		// outputDiv.innerHTML = '';
 
		for (var i = 0; i < origins.length; i++)
		{
			var results = response.rows[i].elements;
			for (var j = 0; j < results.length; j++)
			{
				var element = results[j];
				var distance = element.distance.text;
				var duration = element.duration.text;
				var from = origins[i];
				var to = destinations[j];
 
				$("#" + str_outputDIV).html(distance + " (" + duration + ")");
			}
		}
	}
}
On le voit, c'est ma fonction callback qui est chargée de sortir le résultat dans le div qui va bien. Mais ... rien. Je pense avoir un souci de portée de variable, non ? La variable str_outputDIV ne se voit pas dans le callback, non ?