使用js实现一个可编辑的select下拉列表


Posted in Javascript onFebruary 20, 2014
<select id="name" name="name" 
onkeydown="clearSelect(this,event);" 
onkeypress="writeSelect(this,event);" style="width:70px;"> 
<option value=""></option> 
<option value="test1">test1</option> 
<option value="test2">test2</option> 
<option value="test3">test3</option> 
</select> <script> 
function 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; 
} 
//还可以实现其他按键的响应 
} 
function writeSelect(obj,e) 
{ 
opt = obj.options[0]; 
opt.selected = "selected"; 
opt.value += String.fromCharCode(e.charCode||e.keyCode); 
opt.text = opt.value; 
} 
function forbidBackSpace()//为了在IE中,避免backspace的返回上一页功能,和本下拉框的编辑功能冲突,需要禁掉backspace的功能。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>
Javascript 相关文章推荐
避免 showModalDialog 弹出新窗体的原因分析
May 31 Javascript
jquery二级导航内容均分的原理及实现
Aug 13 Javascript
百度UEditor编辑器如何关闭抓取远程图片功能
Mar 03 Javascript
javascript判断变量是否有值的方法
Apr 20 Javascript
javascript中setInterval的用法
Jul 19 Javascript
javascript使用Promise对象实现异步编程
Mar 01 Javascript
jQuery对象与DOM对象转换方法详解
May 10 Javascript
JS实现搜索关键词的智能提示功能
Jul 07 Javascript
基于JS脚本语言的基础语法详解
Jul 22 Javascript
浅谈如何使用 webpack 优化资源
Oct 20 Javascript
Javascript 对象(object)合并操作实例分析
Jul 30 Javascript
微信小程序实现音乐播放器
Nov 20 Javascript
js获取指定的cookie的具体实现
Feb 20 #Javascript
js获取和设置属性的方法
Feb 20 #Javascript
js控制浏览器全屏示例代码
Feb 20 #Javascript
JS去掉第一个字符和最后一个字符的实现代码
Feb 20 #Javascript
js动态创建上传表单通过iframe模拟Ajax实现无刷新
Feb 20 #Javascript
JS中数组Array的用法示例介绍
Feb 20 #Javascript
javascript的回调函数应用示例
Feb 20 #Javascript
You might like
php4的session功能评述(一)
2006/10/09 PHP
收集的DedeCMS一些使用经验
2007/03/17 PHP
php实现的支持断点续传的文件下载类
2014/09/23 PHP
WordPress的主题编写中获取头部模板和底部模板
2015/12/28 PHP
IE DOM实现存在的部分问题及解决方法
2009/07/25 Javascript
js 上下左右键控制焦点(示例代码)
2013/12/14 Javascript
js实现通用的微信分享组件示例
2014/03/10 Javascript
js获取隐藏元素的宽高
2017/02/24 Javascript
jquery实现tab选项卡切换效果(悬停、下方横线动画位移)
2017/05/05 jQuery
利用JavaScript对中文(汉字)进行排序实例详解
2017/06/18 Javascript
js实现上传并压缩图片效果
2018/01/10 Javascript
vue2.0.js的多级联动选择器实现方法
2018/02/09 Javascript
Vue2.0 实现单选互斥的方法
2018/04/13 Javascript
jQuery基于Ajax实现读取XML数据功能示例
2018/05/31 jQuery
Vue实现根据hash高亮选项卡
2019/05/27 Javascript
vue实现记事本功能
2019/06/26 Javascript
详解vue 2.6 中 slot 的新用法
2019/07/09 Javascript
vue通过video.js解决m3u8视频播放格式的方法
2019/07/30 Javascript
vue实现全匹配搜索列表内容
2019/09/26 Javascript
es6 super关键字的理解与应用实例分析
2020/02/15 Javascript
maptalks+three.js+vue webpack实现二维地图上贴三维模型操作
2020/08/10 Javascript
python解析模块(ConfigParser)使用方法
2013/12/10 Python
离线安装Pyecharts的步骤以及依赖包流程
2020/04/23 Python
selenium+python环境配置教程详解
2019/05/28 Python
Python序列化与反序列化pickle用法实例
2019/11/11 Python
Python turtle库绘制菱形的3种方式小结
2019/11/23 Python
Shell编程面试题
2012/05/30 面试题
文秘专业大学生求职信
2013/11/10 职场文书
计算机专业毕业生的自我评价
2013/11/18 职场文书
学校七一活动方案
2014/01/19 职场文书
大学应届生的自我评价
2014/03/06 职场文书
汉语言文学毕业生自荐信范文
2014/03/24 职场文书
家庭教育的心得体会
2014/09/01 职场文书
2014群众路线学习笔记
2014/11/06 职场文书
结婚喜宴迎宾词
2015/08/10 职场文书
2016圣诞节贺卡寄语
2015/12/07 职场文书