Bonjour,
J'ai fais 3 listes liées que se remplissent automatiquement avec la bdd en ajax.
Mais je voudrais cacher les 2 dernières listes si il n'y a pas de correspondance dans la précédente.

<lien url="http://locationsenligne.com/locations-immobilieres/recherche-avancee.php">Ici</lien>, les listes sont pour pays, région et département. Je souhaiterais que s'il n'y a pas de régions enregistrées pour un pays, les lignes des régions et départements ne s'affichent pas, de même, s'il n'y a pas de départements enregistrés pour un pays et une région, la ligne de département ne s'affiche pas.

Le problème vient du fait que je suis obligé d'attendre que les listes soient remplis avant d'appeler ma fonction.

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
function cache()
{	
	//si pas de subdivision_1 ...	
	if (document.getElementById('subdivision_1').options.length==0) 
	{
		//on cache le <tr> region_part et depart_part
		document.getElementById('region_part').style.visibility="hidden";
	}
	else
	{
		document.getElementById('region_part').style.visibility="visible";
	}
 
	//si pas de subdivision_2 ...	
	if (document.getElementById('subdivision_2').options.length==0) 
	{
		//on cache le <tr> region_part et depart_part
		document.getElementById('depart_part').style.visibility="hidden";
	}
	else
	{
		document.getElementById('depart_part').style.visibility="visible";
	}
}
function change_cache1()
{
	change();
	cache();
}
function change_cache2()
{
	change2();
	cache();
}
Et l'appel se faisant comme ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
<select name="pays" id="pays" onchange="change_cache1()">
<select name="subdivision_1" id="subdivision_1" onchange="change_cache2()">
Si quelqu'un pouvais m'expliquer comment attendre la fin de la première fonction avant d'exécuter la deuxième ...
Merci