Bonjour,

Je travaille depuis peu sous javascript avec de l'ajax et des onchange, via le logiciel SAS.
Le contexte:
j'ai créé 4 listes box liées(en faisant des paucvre copier coller de programme précédent...:-s) entre elles. La région, l'agence gérante, l'agence gérée et un processus. Sachant que pour chaque champ, j'ai la notion de Toutes régions,toutes agences gérantes,toutes agences gérées ou tous processus qui apparait par défaut à l'écran...

Bref quand je choisis, une région(Ouest par exemple) ça me met automatiquement les agences et les processus associés sans problème. Ensuite quand je choisis une agence gérante, idem pas de problème pour aller me chercher les agences gérées et les processus associés... MAIS quand je veux resélectionner toutes les agences gérantes de la région précédemment sélectionnée(Ouest) en cliquant sur "Toutes agences gérantes" sans passé par la case région vu qu'elle pointe toujours sur le champs "Ouest", là ça plante!!! :-( Et quand je vais voir la log, ça me dit que la macrovariable région n'a pas de valeur!! Donc ma question est après tout ce charabia horrible (désolé:-s), comment faire pour conserver la valeur de ma région affichée à l'écran tant que je n'y touche pas??

Voici le code bordélique du menu:
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
 
		put '<li><a href="#" ';
		put 'onmouseover="window.status='"'Menu Paramétrage - Visualisation';return true;"'"';
		put 'onmouseout="window.status='"''"';return true;" >Visualisation</a>';
		put '<ul formu="Param_visu" ;>';
		put '<table width="150px" border="0" class="small">';
		/* MODIF PATRICK pour REGION */
		if ((profil = "3") or (profil = "4"))then do;
			/***********************Région**************************/
			put '<tr onmouseover="window.status='"'Sélectionnez une Région......';return true;"'"';
			put '    onmouseout="window.status='"''"';return true;">';
			put '<th><select name="Param_Visu_Region" id="Param_Visu_Region" STYLE="width:150px" OnChange="LaunchAjax(';
			put "'idregion='+this.value + '%str(&)ctrlid=Param_Visu_Section%str(&)profil=&profil%str(&)_SERVICE=&service_env.%str(&)_PROGRAM=progpms.Uti_getcps_param.sas%str(&)_&debug_sommaire%str(&)region='+this.value";
			put "+'%str(&)default=true%str(&)onglet=Param_Visu', '/&bin_path/broker.exe', 'GET','Param_Visu_S')"';LaunchAjax(';
			put "'idregion='+this.value + '%str(&)section=CALC%str(&)ctrlid=Param_visu_Section_geree%str(&)profil=&profil%str(&)_SERVICE=&service_env.%str(&)_PROGRAM=progpms.Uti_getsectiongeree.sas%str(&)_&debug_sommaire%str(&)region='+this.value+";
			put "'%str(&)default=true%str(&)onglet=Param_Visu', '/&bin_path/broker.exe', 'GET','Param_Visu_SG')"';LaunchAjax(';
			put "'idregion='+this.value + '%str(&)section=CALC%str(&)sectiong=CALCG%str(&)ctrlid=Param_visu_Process%str(&)profil=&profil%str(&)_SERVICE=&service_env.%str(&)_PROGRAM=progpms.Uti_getprocess_param.sas%str(&)_&debug_sommaire%str(&)region='+this.value+";
			put "'%str(&)default=true%str(&)onglet=Param_Visu', '/&bin_path/broker.exe', 'GET','Param_Visu')"'" >';
			put "&ListeRegionAll";
			put "&ListeRegion";
			put '</select></th></tr>';
		end;
					/***********************Section gérante**************************/
		put '<tr onmouseover="window.status='"'Sélectionnez une Agence......';return true;"'"';
		put '    onmouseout="window.status='"''"';return true;">';
		put '<th colspan=2 width="150px"><div name=Param_Visu_S_contenu id="Param_Visu_S_contenu"><select name="Param_Visu_SG" id="Param_Visu_SG" STYLE="width:150px" OnChange="LaunchAjax(';
		put "'idsection='+this.value + '%str(&)ctrlid=Param_visu_Section_geree%str(&)profil=&profil%str(&)_SERVICE=&service_env.%str(&)_PROGRAM=progpms.Uti_getsectiongeree.sas%str(&)_&debug_sommaire%str(&)section='+this.value+";
		put "'%str(&)default=true%str(&)onglet=Param_Visu', '/&bin_path/broker.exe', 'GET','Param_Visu_SG')"';LaunchAjax(';
		put "'idsection='+this.value + '%str(&)sectiong=CALCG%str(&)ctrlid=Param_visu_Process%str(&)profil=&profil%str(&)_SERVICE=&service_env.%str(&)_PROGRAM=progpms.Uti_getprocess_param.sas%str(&)_&debug_sommaire%str(&)section='+this.value+";
		put "'%str(&)default=true%str(&)onglet=Param_Visu', '/&bin_path/broker.exe', 'GET','Param_Visu')"'" >';
		put "&ListeSectiongerantel";
		put "&ListeSectiongerante";
		put '</select></div></th></tr>';
 
			/*put '<tr onmouseover="window.status='"'Sélectionnez une Agence......';return true;"'"';
			put '    onmouseout="window.status='"''"';return true;">';
			put '<td><div name=Param_Visu_S_contenu id="Param_Visu_S_contenu"><select name="Param_Visu_Section" id="Param_Visu_Section" STYLE="width:150px" >';
		    put "&ListeSectiongerantel";
			put "&ListeSectionGerante";
			put '</select></div></td></tr>';*/
 
			/***********************Section gérée**************************/
			put '<tr onmouseover="window.status='"'Sélectionnez une Agence à gérer......';return true;"'"';
		    put '    onmouseout="window.status='"''"';return true;">';
		    put '<th colspan=2 width="150px"><div name="Param_Visu_SG_contenu" id="Param_Visu_SG_contenu" ><select name="Param_Visu_Process" id="Param_Visu_Process" STYLE="width:150px" OnChange="LaunchAjax(';
		    put "'idsectiong='+this.value + '%str(&)ctrlid=Param_visu_Process%str(&)profil=&profil%str(&)_SERVICE=&service_env.%str(&)_PROGRAM=progpms.Uti_getprocess_param.sas%str(&)_&debug_sommaire%str(&)sectiong='+this.value+";
		    put "'%str(&)default=true%str(&)onglet=Param_visu', '/&bin_path/broker.exe', 'GET','Param_visu')"'" >';
		    put "&ListeSectiongereel";
		    put "&ListeSectiongeree";
		    put '</select></div></th></tr>';
 
			/***********************Processus**************************/
		    put '<tr onmouseover="window.status='"'Sélectionnez un Processus......';return true;"'"';
		    put '    onmouseout="window.status='"''"';return true;">';
		    put '<th colspan=2 width="150px"><div name=Param_visu_contenu id="Param_visu_contenu"><select name="Param_visu_process"  STYLE="width:150px"  id="Param_visu_Process" >';
		    put "&ListeProcessParaml.";
		    put "&ListeProcessParam.";
		    put'</select></div></th></tr>';
			/***********************Periode**************************/
			put '<tr onmouseover="window.status='"'Sélectionnez une Période......';return true;"'"';
			put '    onmouseout="window.status='"''"';return true;" width="150px"> ';
			put '<td><select name="Param_visu_temps" id="Param_visu_temps" STYLE="width:150px">';
			put "&listeMois";
			put '</select></td></tr>';
			put '</table>';
			put '</ul></li>';
Bonje suis pas sûr de m'être très bien fait comprendre mais un peu d'aide serait la bienvenue!
Merci.