如何解决屏蔽delete键引起的回退问题,特别是针对IE只读输入框?

更新于
2026-09-30 20:09:05
1阅读来源:SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计153个文字,预计阅读时间需要1分钟。

如何解决屏蔽delete键引起的回退问题,特别是针对IE只读输入框?

当使用IE浏览器时,按Delete键会导致页面回退,从而导致输入的数据丢失。以下是将此JavaScript代码放置在页面底部的代码示例:$(document).keydown(function(event){…});注意:在jQuery中,event已经被封装,下面的语句已无意义,event总是会被封装。

如何解决屏蔽delete键引起的回退问题,特别是针对IE只读输入框?

IE 浏览器按delete键导致页面回退,辛辛苦苦录入的数据丢失。

// 将此js代码放在页面的底部 $(document).keydown(function(event){ // 在jquery中event已被封装,下面的语句没有意义了,event总是会被传递 // event = event || window.event; // IE的event.keyCode和非IE的event.charCode被封装成event.which if(event.which == 8){ //当前焦点不在input或textarea时禁用delete键 var name = document.activeElement.tagName.toUpperCase(); if(name != 'INPUT' && name != 'TEXTAREA'){ return false; } // readonly element in IE if((name == 'INPUT' || name == 'TEXTAREA') && document.activeElement.readOnly){ return false; } } });

本文共计153个文字,预计阅读时间需要1分钟。

如何解决屏蔽delete键引起的回退问题,特别是针对IE只读输入框?

当使用IE浏览器时,按Delete键会导致页面回退,从而导致输入的数据丢失。以下是将此JavaScript代码放置在页面底部的代码示例:$(document).keydown(function(event){…});注意:在jQuery中,event已经被封装,下面的语句已无意义,event总是会被封装。

如何解决屏蔽delete键引起的回退问题,特别是针对IE只读输入框?

IE 浏览器按delete键导致页面回退,辛辛苦苦录入的数据丢失。

// 将此js代码放在页面的底部 $(document).keydown(function(event){ // 在jquery中event已被封装,下面的语句没有意义了,event总是会被传递 // event = event || window.event; // IE的event.keyCode和非IE的event.charCode被封装成event.which if(event.which == 8){ //当前焦点不在input或textarea时禁用delete键 var name = document.activeElement.tagName.toUpperCase(); if(name != 'INPUT' && name != 'TEXTAREA'){ return false; } // readonly element in IE if((name == 'INPUT' || name == 'TEXTAREA') && document.activeElement.readOnly){ return false; } } });