Bonjour à tous,

J'utilise json pour remplacer le contenu de mes listes déroulantes afin que ça fonctionne avec tous les browsers (surtout avec IE).

Pour cela, j'utilise ce code :

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
 
switch($arr[0])
	{
		case 'neuro_irm_emplacements':
		{
			$sql = "SELECT * FROM ".$arr[0]." WHERE ID_regions = ". $arr[1]." ORDER BY Nom";
		}
	}
 
	$req = mysql_query($sql);
 
	$return = '';
	$return.= '[{valeur :"", text: "Places"},';
 
	while($res = mysql_fetch_array($req))
	{
		$return.= '{valeur:'.$res["ID"].',text:"'. $res["Nom"].'"},';
 
 
	}
//je remplace la derniere virgule par la ) dans la variable $return		
	$return=preg_replace("/,$/","]",$return);
	//je retourne le rsultat a AJAX
	echo $return;
retourne donc une chaine à js de ce genre :

[{valeur :"", text: "Places"},{valeur:13,text:"Brainstem"},{valeur:11,text:"Cereb

Hemis"},{valeur:12,text:"Cereb Angle"},{valeur:15,text:"Intraventriculaire"},{valeur:14,text:"Spinal Cord"},{valeur:10,text:"Vermis"}]
J'ai ensuite ce code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
LeRetour = trim(xhr.responseText);
			emptySel(document.getElementById(arr[2]));
			MesOption=eval("(" + LeRetour + ")");
Jusqu'à maintenant, ça fonctionnait parfaitement.

Mais une alerte de MesOption m'indique ceci :

[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
J'avoue ne pas bien comprendre.

On m'a déjà dit que "eval" était déprécié, j'en profite donc pour vous demander si il n'y a pas un autre moyen de procéder ?

Je vous en remercie d'avance.

beegees