La copie de code est la suivante:
<select id = "name" name = "name"
onkeydown = "ClearSelect (this, event);"
onKeyPress = "WriteSelect (this, événement);">
<Option Value = ""> </ Option>
<option valeur = "test1"> test1 </opoption>
<option valeur = "test2"> test2 </ option>
<option valeur = "test3"> test3 </ option>
</lect>
<cript>
Fonction ClearSelect (OBJ, E)
{
opt = obj.options [0];
opt.selected = "sélectionné";
if ((e.KeyCode == 8) || (e.Charcode == 8)) // Utilisez la touche arrière pour implémenter la fonction d'édition textuelle de la suppression de délétion
{
opt.value = opt.value.substring (0, opt.value.length> 0? opt.value.length-1: 0);
opt.text = opt.value;
}
if ((e.KeyCode == 46) || (e.charcode == 46)) // Utilisez la touche de suppression pour atteindre la fonction d'édition textuelle
{
opt.value = "";
opt.text = opt.value;
}
// il peut également réaliser la réponse des autres clés
}
Fonction WriteSelect (OBJ, E)
{
opt = obj.options [0];
opt.selected = "sélectionné";
opt.value + = string.fromCharcode (e.charcode || e.KeyCode);
opt.text = opt.value;
}
Fonction interdispace debackspace () // Afin d'éviter le retour du backspace à la fonction de page précédente et de confronter la fonction d'édition de cette boîte déroulante dans IE, la fonction de retour arrière doit être désactivée. Interbitbackspace peut être écrit dans <Body onKeyDown = "InterbidBackspace ();">.
{
if ((event.KeyCode == 8) && (event.srcelement.type! = "text" && event.srcelement.type! = "textarea" && event.srcelement.type! = "mot de passe"))
{
event.KeyCode = 0;
event.ReturnValue = false;
}
}
</cript>