使用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 相关文章推荐
js left,right,mid函数
Jun 10 Javascript
javascript判断iphone/android手机横竖屏模式的函数
Dec 20 Javascript
使用javascript实现判断当前浏览器
Apr 14 Javascript
jQuery.trim() 函数及trim()用法详解
Oct 26 Javascript
Struts2+jquery.form.js实现图片与文件上传的方法
May 05 Javascript
jQuery插件开发汇总
May 15 Javascript
使用jQuery Mobile框架开发移动端Web App的入门教程
May 17 Javascript
js实现导航吸顶效果
Feb 24 Javascript
vue实现的上传图片到数据库并显示到页面功能示例
Mar 17 Javascript
js使用文件流下载csv文件的实现方法
Jul 15 Javascript
javascript中undefined的本质解析
Jul 31 Javascript
layui关闭弹窗后刷新主页面和当前更改项的例子
Sep 06 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
php下封装较好的数字分页方法
2010/11/23 PHP
比较简单的百度网盘文件直链PHP代码
2013/03/24 PHP
基于PHP Socket配置以及实例的详细介绍
2013/06/13 PHP
PHP解析html类库simple_html_dom的转码bug
2014/05/22 PHP
php向js函数传参的几种方法
2014/08/10 PHP
php中通过DirectoryIterator删除整个目录的方法
2015/03/13 PHP
PHP实现UTF8二进制及明文字符串的转化功能示例
2017/11/20 PHP
CI框架(CodeIgniter)操作redis的方法详解
2018/01/25 PHP
Laravel 关联模型-关联新增和关联更新的方法
2019/10/10 PHP
javascrpt绑定事件之匿名函数无法解除绑定问题
2012/12/06 Javascript
JS禁用浏览器退格键实现思路及代码
2013/10/29 Javascript
Javascript中设置默认参数值示例
2014/09/11 Javascript
简单实现JS计算器功能
2016/12/21 Javascript
ES6概念 Symbol.keyFor()方法
2016/12/25 Javascript
原生js开发的日历插件
2017/02/04 Javascript
JavaScript实现求最大公共子串的方法
2018/02/03 Javascript
浅谈Angularjs中不同类型的双向数据绑定
2018/07/16 Javascript
解决vue axios的封装 请求状态的错误提示问题
2018/09/25 Javascript
Vue中jsx不完全应用指南小结
2019/11/01 Javascript
解决vue项目运行提示Warnings while compiling.警告的问题
2020/09/18 Javascript
OpenLayer3自定义测量控件MeasureTool
2020/09/28 Javascript
python2.7删除文件夹和删除文件代码实例
2013/12/18 Python
Python语言描述连续子数组的最大和
2018/01/04 Python
python利用高阶函数实现剪枝函数
2018/03/20 Python
python集合比较(交集,并集,差集)方法详解
2018/09/13 Python
如何通过雪花算法用Python实现一个简单的发号器
2019/07/03 Python
python多环境切换及pyenv使用过程详解
2019/09/27 Python
Pytorch 数据加载与数据预处理方式
2019/12/31 Python
在Pytorch中使用Mask R-CNN进行实例分割操作
2020/06/24 Python
菲律宾最大的网上花店和礼品店:PhilFlower.com
2018/02/09 全球购物
瑞士网球商店:Tennis-Point
2020/03/12 全球购物
父亲生日宴会答谢词
2014/01/10 职场文书
高中课程设置方案
2014/05/28 职场文书
小学综合实践活动总结
2014/07/07 职场文书
毕业生评语大全
2015/01/04 职场文书
医学生自荐信范文(2016精选篇)
2016/01/28 职场文书