Кода -копия выглядит следующим образом:
<select id = "name" name = "name"
OnKeyDown = "clearSelect (это, событие);"
OnKeyPress = "wriseSelect (это, событие);">
<option value = ""> </option>
<option value = "test1"> test1 </option>
<option value = "test2"> test2 </option>
<option value = "test3"> test3 </option>
</select>
<Скрипт>
функция ClearSelect (obj, E)
{
opt = obj.options [0];
opt.selected = "selected";
if ((e.keycode == 8) || (e.charcode == 8)) // Использование клавиши Backspace для реализации функции вербатимы редактирования удаления Vorbatim
{
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)) // Использование ключа удаления для достижения функции редактирования дословного
{
opt.value = "";
Opt.Text = Opt.Value;
}
// это также может реализовать ответ других ключей
}
Функция записывает (obj, e)
{
opt = obj.options [0];
opt.selected = "selected";
opt.value += string.fromCharcode (e.charcode || e.keycode);
Opt.Text = Opt.Value;
}
Function forbackspace () // Чтобы избежать возврата Backspace к функции предыдущей страницы и конфликта с функцией редактирования этого раскрывающегося ящика в IE, функция Backspace должна быть отключена. Запрещение space может быть написано в <body onkeydown = "forbidbackspace ();">.
{
if ((event.keycode == 8) && (event.srcelement.type! = "text" && event.srcelement.type! = "textarea" && event.srcelement.type! = "пароль"))))
{
event.keycode = 0;
event.returnValue = false;
}
}
</script>