js 禁用只读文本框获得焦点时的退格键


Posted in Javascript onApril 25, 2010

有时候难免会要用到只读的文本框,可今天发现只读文本框有一个缺陷,当鼠标焦点在文本框里面的时候按回退键(backSpace), 会退回到前一个页面,这个问题就有点烦恼了,用户又不清楚可不可以输入,他如果看到文本框想去改里面的东西,按一下,有可能前面所有填写的数据就会丢失.故此写了个方法,供大伙有需要时放入<script></script>,保管你称心如意。

document.documentElement.onkeydown = function(evt){ 
var b = !!evt, oEvent = evt || window.event; 
if (oEvent.keyCode == 8) { 
var node = b ? oEvent.target : oEvent.srcElement; 
var reg = /^(input|textarea)$/i, regType = /^(text|textarea)$/i; 
if (!reg.test(node.nodeName) || !regType.test(node.type) || node.readOnly || node.disabled) { 
if (b) 
{ 
oEvent.stopPropagation(); 
} 
else 
{ 
oEvent.cancelBubble = true; 
oEvent.keyCode = 0; 
oEvent.returnValue = false; 
} 
} 
} 
}
Javascript 相关文章推荐
javascript编程起步(第四课)
Jan 10 Javascript
打造个性化的功能强大的Jquery虚拟键盘(VirtualKeyboard)
Oct 11 Javascript
轻松掌握JavaScript中的Math object数学对象
May 26 Javascript
jQuery基本选择器和层次选择器学习使用
Feb 27 Javascript
JS库之Waypoints的用法详解
Sep 13 Javascript
浅谈Vue SPA 首屏加载优化实践
Dec 15 Javascript
vue.js给动态绑定的radio列表做批量编辑的方法
Feb 28 Javascript
详解使用VUE搭建后台管理系统(vue-cli更新至3.0)
Aug 22 Javascript
vue-cli3添加模式配置多环境变量的方法
Jun 05 Javascript
基于vue、react实现倒计时效果
Aug 26 Javascript
如何在wxml中直接写js代码(wxs)
Nov 14 Javascript
一篇文章带你使用Typescript封装一个Vue组件(简单易懂)
Jun 05 Javascript
js 内存释放问题
Apr 25 #Javascript
JavaScript 对象链式操作测试代码
Apr 25 #Javascript
网页上的Javascript编辑器和代码格式化
Apr 25 #Javascript
jQuery温习篇 强大的JQuery选择器
Apr 24 #Javascript
javascript 二分法(数组array)
Apr 24 #Javascript
JS判断是否为数字,是否为整数,是否为浮点数的代码
Apr 24 #Javascript
JavaScript 比较时间大小的代码
Apr 24 #Javascript
You might like
五款常用mysql slow log分析工具的比较分析
2011/05/22 PHP
PHP 杂谈《重构-改善既有代码的设计》之五 简化函数调用
2012/05/07 PHP
浅析PHP7新功能及语法变化总结
2016/06/17 PHP
Laravel框架中VerifyCsrfToken报错问题的解决
2017/08/30 PHP
PHP设计模式之适配器模式(Adapter)原理与用法详解
2019/12/12 PHP
50个优秀经典PHP算法大集合 附源码
2020/08/26 PHP
jQuery中对节点进行操作的相关介绍
2013/04/16 Javascript
基于jquery实现的文字淡入淡出效果
2013/11/14 Javascript
Javascript模块化编程详解
2014/12/01 Javascript
js兼容火狐显示上传图片预览效果的方法
2015/05/21 Javascript
Node.js操作Firebird数据库教程
2016/03/04 Javascript
jQuery点击输入框显示验证码图片
2016/05/19 Javascript
js 动态添加元素(div、li、img等)及设置属性的方法
2016/07/19 Javascript
Node.js如何自动审核团队的代码
2016/07/20 Javascript
基于jQuery实现表格的排序
2016/12/02 Javascript
js获取地址栏参数的两种方法
2017/06/27 Javascript
BootStrap Fileinput插件和Bootstrap table表格插件相结合实现文件上传、预览、提交的导入Excel数据操作步骤
2017/08/07 Javascript
详解使用angular的HttpClient搭配rxjs
2017/09/01 Javascript
浅谈React深度编程之受控组件与非受控组件
2017/12/26 Javascript
jQuery中将json数据显示到页面表格的方法
2018/05/27 jQuery
vue将单页面改造成多页面应用的方法
2018/11/25 Javascript
详解nodejs解压版安装和配置(带有搭建前端项目脚手架)
2018/12/06 NodeJs
微信小程序实现简单表格
2019/02/14 Javascript
vue 点击展开显示更多(点击收起部分隐藏)
2019/04/09 Javascript
javascript设计模式 ? 简单工厂模式原理与应用实例分析
2020/04/09 Javascript
探究一道价值25k的蚂蚁金服异步串行面试题
2020/08/21 Javascript
用python简单实现mysql数据同步到ElasticSearch的教程
2018/05/30 Python
Python Pandas 转换unix时间戳方式
2019/12/07 Python
Pytorch evaluation每次运行结果不同的解决
2020/01/02 Python
html5的input的required使用中遇到的问题及解决方法
2018/04/24 HTML / CSS
ECCO爱步美国官网:来自丹麦的鞋履品牌
2016/11/23 全球购物
澳大利亚排名第一的在线酒类商店:MyBottleShop
2018/04/26 全球购物
经济实惠的豪华背包和行李袋:Packs Project
2018/10/17 全球购物
欧洲最古老的鞋厂:Peter Kaiser
2019/11/05 全球购物
社区两委对照检查材料
2014/08/23 职场文书
2014向国旗敬礼网上签名活动总结
2014/09/27 职场文书