首页 web前端 js教程 javascript阻止浏览器后退事件防止误操作清空表单_javascript技巧

javascript阻止浏览器后退事件防止误操作清空表单_javascript技巧

May 16, 2016 pm 05:12 PM
javascript 浏览器

由于客户大多数是不懂电脑的大菜鸟。所以误操作比较多,有时没有选中文本框,然后不小心按了退格之后,刚刚辛苦填好的表单就什么也后退的没有了。网上查了好多资料,然后整合了一下。分享给大家。也希望酸奶姐姐来看看我的第一篇技术博客。呵呵(别介意我提到了你哦。)。废话不多说。上源码。

复制代码 代码如下:

$(function(){
//处理键盘事件 禁止后退键(Backspace)密码或单行、多行文本框除外
function banBackSpace(e){
var ev = e || window.event;//获取event对象
var obj = ev.target || ev.srcElement;//获取事件源

var t = obj.type || obj.getAttribute('type');//获取事件源类型

//获取作为判断条件的事件类型
var vReadOnly = obj.getAttribute('readonly');
var vEnabled = obj.getAttribute('enabled');
//处理null值情况
vReadOnly = (vReadOnly == null) ? false : true;
vEnabled = (vEnabled == null) ? true : vEnabled;

//当敲Backspace键时,事件源类型为密码或单行、多行文本的,
//并且readonly属性为true或enabled属性为false的,则退格键失效
var flag1=(ev.keyCode == 8 && (t=="password" || t=="text" || t=="textarea")
&& (vReadOnly || vEnabled!=true))?true:false;

//当敲Backspace键时,事件源类型非密码或单行、多行文本的,则退格键失效
var flag2=(ev.keyCode == 8 && t != "password" && t != "text" && t != "textarea")
?true:false;

//判断
if(flag2){
return false;
}
if(flag1){
return false;
}
}

//禁止后退键 作用于Firefox、Opera
document.onkeypress=banBackSpace;
//禁止后退键 作用于IE、Chrome
document.onkeydown=banBackSpace;
window.history.forward(1);//屏蔽浏览器自带的后退键
})

需要注意的地方是:

这段代码一定要放到初始化方法中。然后用document.onkeypress=banBackSpace去调用自己写的方法。
复制代码 代码如下:

vReadOnly = (vReadOnly == null) ? false : true;对于这段代码,原来冒号后面是vReadOnly这个值,后来发现在我项目中它返回空,不是null于是改成了true。

按照上面方法即可实现在非text,password,textare时按退格阻止浏览器后退事件,但是不会阻止在文本框有值时的退格事件。这是我的第一篇博客,希望各位多多捧场。
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门文章

仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章

仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章标签

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

芝麻开门官网网站 芝麻开门app最新进入网址 芝麻开门官网网站 芝麻开门app最新进入网址 Feb 28, 2025 am 11:18 AM

芝麻开门官网网站 芝麻开门app最新进入网址

清除谷歌浏览器注册表,清理谷歌浏览器卸载不干净残留 清除谷歌浏览器注册表,清理谷歌浏览器卸载不干净残留 Jun 19, 2024 am 11:09 AM

清除谷歌浏览器注册表,清理谷歌浏览器卸载不干净残留

最新版芝麻开门官网入口 gate.io官网链接地址入口 最新版芝麻开门官网入口 gate.io官网链接地址入口 Feb 28, 2025 am 11:21 AM

最新版芝麻开门官网入口 gate.io官网链接地址入口

gate.io芝麻开门下载中文教程 gate.io芝麻开门下载中文教程 Feb 28, 2025 am 10:54 AM

gate.io芝麻开门下载中文教程

芝麻开门交易所官方网址 gate.io交易所官网入口 芝麻开门交易所官方网址 gate.io交易所官网入口 Feb 28, 2025 am 10:45 AM

芝麻开门交易所官方网址 gate.io交易所官网入口

开发者福音:以太坊升级带来的工具与资源 开发者福音:以太坊升级带来的工具与资源 Feb 27, 2025 pm 04:33 PM

开发者福音:以太坊升级带来的工具与资源

欧意交易所app官方安装包下载链接 欧意交易所app官方安装包下载链接 Mar 04, 2025 pm 06:45 PM

欧意交易所app官方安装包下载链接

聚币网APP在哪下载 聚币网APP在哪下载 Mar 05, 2025 pm 09:06 PM

聚币网APP在哪下载

See all articles