permet de réduire les options d'une liste de choix à partir du contenu d'un champ de texte :
en saisissant le début du mot/nom dans une zone de texte, la liste ne contiendra plus que les éléments qui commence par votre saisie ...
Source / Exemple :
<HTML>
<HEAD>
<TITLE>Recherche dans une liste à partir d'un champ texte</TITLE>
<script language="VBScript">
Dim tout()
Dim nb_elements
Sub Window_Onload
For i = 1 to 100
Set oOption = Document.createElement("OPTION")
oOption.Text = i & " Opt" & i
liste.Add(oOption)
ReDim Preserve tout(i)
tout(i) = oOption.Text
next
nb_elements = UBound(tout)
End Sub
function zyva(x,y)
viderListe(y)
If len(x) = 0 Then
restoreListe(y)
Else
For i = 1 to nb_elements
If InStr(tout(i), x) = 1 Then
Set oOption = Document.createElement("OPTION")
oOption.Text = tout(i)
y.Add(oOption)
End If
next
If y.options.length = 1 Then
y.options(0).selected = true
End If
End If
end function
function viderListe(y)
y.options.length = 0
end function
function restoreListe(y)
For i = 1 to nb_elements
Set oOption = Document.createElement("OPTION")
oOption.Text = tout(i)
y.Add(oOption)
next
end function
</script>
</HEAD>
<BODY>
Recherche dans une liste à partir d'un champ texte<br><br>
<INPUT TYPE="text" NAME="nom" ID="nom" SIZE="20" MAXLENGTH="30" onKeyUp="zyva(document.getElementById('nom').value), document.getElementById('liste')">
<br><br>
<SELECT NAME="liste" ID="liste" SIZE="3">
</SELECT>
</BODY>
</HTML>
Conclusion :
inspiré du source
http://www.javascriptfr.com/codes/RECHERCHE-DANS-LISTE-PARTIR-CHAMP-TEXTE_32839.aspx
J'avais besoin de l'équivalent vbs
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.