11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

Je suis à la recherche d'une méthode qui me permettrait de scroller une liste multiple pour la positionner automatiquement au premier élément sélectionné.
J'ai fait quelques recherches et je suis revenu plus ou moins bredouille, j'ai quand même trouvé cette solution mais impossible de l'appliquer.

Savez-vous si c'est réellement possible à mettre en place, et si oui comment? that is the question Smiley smile

Merci de votre aide en tout cas.
Modifié par SuD (21 Mar 2007 - 15:38)
J'ai finalement trouvé une solution mais je ne comprends pas le comportement. Voici le code que j'utilise, si je vire le alert() de controle, ça ne fonctionne pas !! Je précise que ça positionne la liste comme je le souhaite au moment où je clique sur le bouton OK de la boite d'alerte.


function scroll(criteria){

	var sel = document.getElementById(criteria);

	for (var j=0 ; j<sel.options.length ; j++) {
		if(sel.options[j].selected == true) {
			alert(sel.options[j].selected);
			sel.options[j].selected = 'false';
			sel.options[j].selected = 'true';
			return;
		}
	}
}


Cette fonction je l'utilise au clic sur un lien, et je lui passe en paramètre l'id d'une liste.

Quelqu'un a une idée?

<edit>Remplacé les i par des j à cause du bug BBCode</edit>
Modifié par SuD (23 Mar 2007 - 14:42)
Salut,

L'appel de la fonction alert provoque un rafraîchissement de l'affichage (elle a donc des effets de bord, ce qui est parfois un peu gênant quand on l'utilise à des fins de debug).