Je travaille sur un site web en ASP et VB6.

J'ai une liste déroulante de noms d'employés (plus de 250 noms!) qui est chargée à partir d'une table d'une BD SQL Server. Le VALUE de la liste se fait sur le numéro d'employé mais son LABEL qu'on voit est son nom ("nom, prénom" en fait).

J'ai trouvé un petit JS qui fait une recherche dans une liste déroulante et qui sélectionne l'option la plus près. L'utilisateur entre des caractères dans une case texte et l'application cherche dans les étiquettes des options de la liste.

Code asp : 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
<td>
	<select class="smallText" name="strNoSeqEmployeAssigne">
<% 
'La premiere ligne est Veuillez selectionner etc.
if strNoSeqEmployeAssigne = "-1" then
	strTmp = "selected"
else
	strTmp = ""
end if
%>
		<OPTION <%=strTmp%> VALUE = "-1">- Choisir un Employé -</OPTION>
		<% PeuplerDropEmploye strNoSeqEmployeAssigne%>
	</select>
	<span class="smallTextBlue">&nbsp;&nbsp;Recherche</span>&nbsp;
	<INPUT type="text" name="strRechercheEmploye" class="smallText" onkeypress="Select_Value_Set(strNoSeqEmployeAssigne,strRechercheEmploye)" size="30" maxlength="60">
</td>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
function Select_Value_Set(SelectName, Value) 
{
  eval('SelectObject = document.' + 
    SelectName + ';');
  for(index = 0; 
    index < SelectObject.length; 
    index++) 
   {
   if(SelectObject[index].label >= Value)
     SelectObject.selectedIndex = index;
   }
}
Mon problème est que ça ne fonctionne pas. Ça ne plante pas mais ça ne fonctionne pas.

Merci.