有很多办法能够集成下拉菜单与编辑框两个功能,下面是其中一种:(经过测试,只能用于IE,在firefox下无法编辑.)
html代码如下:
<select name="customer" onkeydown="catchMD(this)" onkeypress="catchMP(this)">
<option selected="selected">中国</option>
<option>美国</option>
<option>日本</option>
<option>英国</option>
<option>法国</option>
<option>德国</option>
</select><br />
javascrip代码如下:
function catchMD(obj){
switch(event.keyCode){
case 13:
// obj.options[obj.length] = new Option("","",false,true);
// event.returnValue = false;
break;
case 46:
/* if (confirm("是否删除?")){
obj.options[obj.selectedIndex] = null;
if(obj.options.length > 0){
obj.options[0].selected = true;
}
event.returnValue = false;
*/ break;
// }
case 8:
obj.options[obj.selectedIndex].text = obj.options[obj.selectedIndex].text.substr(0,obj.options[obj.selectedIndex].text.length-1);
event.returnValue = false;
break;
}
}
function catchMP(obj){
obj.options[obj.selectedIndex].text = obj.options[obj.selectedIndex].text + String.fromCharCode(event.keyCode);
event.returnValue = false;
}
function window.onload() {
obj = document.getElementsByTagName("SELECT");
obj[0].focus();
}