コードコピーは次のとおりです。
<選択id = "name" name = "name"
onkeydown = "ClearSelect(This、event);"
onkeypress = "writeselect(this、event);">
<オプション値= ""> </option>
<オプション値= "test1"> test1 </option>
<オプション値= "test2"> test2 </option>
<オプション値= "test3"> test3 </option>
</select>
<スクリプト>
関数ClearSelect(obj、e)
{
opt = obj.options [0];
opt.selected = "selected";
if((e.keycode == 8)||(e.charcode == 8))// backspaceキーを使用して、削除虚偽の逐語的編集関数を実装します
{
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))// deleteキーを使用して、逐語的
{
opt.value = "";
opt.text = opt.value;
}
//他のキーの応答を実現することもできます
}
functionwretelect(obj、e)
{
opt = obj.options [0];
opt.selected = "selected";
opt.value += string.fromcharcode(e.charcode || e.keycode);
opt.text = opt.value;
}
forbidbackspace()// Backspaceが前のページ関数への戻りとIEのこのドロップダウンボックスの編集関数との競合を回避するために、バックスペース関数を無効にする必要があります。 forbidbackspaceは、<body onkeydown = "forbidbackspace();">に記述できます。
{
if((event.keycode == 8)&&(event.srcelement.type!= "text" && event.srcelement.type!= "textarea" && event.srcelement.type!= "password"))
{
event.keycode = 0;
event.returnValue = false;
}
}
</script>