Salut à tous !!

J'aimerais créer un champ d'autocompletion qui affiche une liste de nom, et lors de la sélection récupérer l'id du nom sélectionner pour le mettre dans un champ caché.

Donc pour ça j'ai en html :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
<input type="text" id="filtre_nom" class="width: 300px;"/>
<input type="text" id="filtre_nom_id_selected" value=""/>
Et dans le JS, je rempli mon tableau avec des données en provenance d'un web service.

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
 
if(lstNom1.length > 0){
	jQuery(xml).find('Nom1').each(function(){
		var idNom1 = jQuery(this).find('id').text();
		var nomNom1 = jQuery(this).find('libelle').text();
		dataNom.push([idNom1, nomNom1]);
	});
}	
 
if(lstNom2.length > 0){
	jQuery(xml).find('Nom2').each(function(){
		var idNom2 = jQuery(this).find('id').text();
		var nomNom2 = jQuery(this).find('libelle').text();
		dataNom.concat([idNom2, nomNom2]);
	});
}
if(lstNom3.length > 0){
	jQuery(xml).find('Nom3').each(function(){
		var idNom3 = jQuery(this).find('id').text();
		var nomNom3 = jQuery(this).find('libelle').text();
		dataNom.concat([idNom3, nomNom3]);
	});
}
Puis je fais l'autocompletion :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
jQuery("#filtre_client").autocomplete(dataNom, {
	mustMatch: true,
	matchContains: true
}).result(function(event, data, formatted) {
	if(data){
		jQuery("#filtre_client_id_selected").val(data[0]);
	}
});
Mon problème est qu'à chaque fois je ne remonte pas les bonnes infos... un coup il m'affiche que les id de la liste "Nom1", un coup rien du tout..

J'ai l'impression que mon tableau est de forme dataNom[i][id, nom] car quand je fait
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
alert(dataNom[0]);
il m'affiche la première ligne genre " 01 - robert " ...

Comment faire pour que dans l'autocompletion j'ai bien ce que je veux , c'est à dire les libellés à l'affiche puis les ids lors de la sélection (result) ?