Bonjour,

Je débute en javascript, et j'ai réalisé une autocompletion manuel sans utilser de librairies. Ensuite, j'ai vu que JQuery proposé des composants de ce type, et je souhaite donc refaire tout cela en passant par JQuery.

Seulement, je bloque sur comment récupérer la valeur de l'élément surligné. Car je souhaite la mémoriser, afin de pouvoir la supprimer de la liste d'identifiants possible si l'utilisateur presse la touche "suppr". (Même fonctionnement que l'autocomplete de firefox).

voici mon code en question :

Fichier HTML :
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
 
<script type="text/javascript">
    $(function(){
 
    //Autocomplete
    $("#autocomplete").autocomplete({ 
        minLength: 0,
        source: getCookie()
    });
 
    $("#autocomplete").dblclick(function() {$(this).autocomplete("search");});
    $('.ui-menu-item a').live('mouseover mouseout', function(event){rememberSelectedItem(event);});
 
    //hover states on the static widgets
    $('#dialog_link, ul#icons li').hover(
        function() { $(this).addClass('ui-state-hover'); }, 
        function() { $(this).removeClass('ui-state-hover'); }
    );
 
});
</script>
 
...
...
<td>Username: <!-- Autocomplete -->		
    <input id="autocomplete" style="z-index: 100; position: relative" title="type &quot;a&quot;" />
</td>
<td>Remember: 
    <input type="checkbox" name="rememberMe" id="rememberId" value="remember" />
<td>
Et voici pour le JS :

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
 
var suggests = [];
var canDelete = false;
var deletableValue = '';
var cookieName = 'username';
 
function getCookie()
{
	return ["alert","attention","test","zouzou"];
}
 
function rememberSelectedItem(event)
{
	if(event.type == 'mouseover'){
		document.getElementById('rememberId').checked = true;
		deletableValue = 'test';
		document.getElementById('autocomplete').value = deletableValue;
		canDelete = true;
	}
	else{
		document.getElementById('rememberId').checked = false;
		deletableValue = '';
		canDelete = false;
	}
}
Donc la check box passe bien à "true" lors du survol d'un élément proposé par l'autocomplete, et repasse à false lorsque l'on ne survol plus d'élements.

Cela me confirme que mes évenement "mouseover" et "mouseout" fonctionnent correctement, mais je n'arrive pas récuperer la valeur de l'élément survolé.

Si quelqu'un à une idée, une piste, je vous en serais reconnaissant

Edit : c'est la variable "deletableValue" dans le javaScript qui doit prendre la valeur de l'élément survolé...