//处理键盘事件 禁止后退键(Backspace)密码或单行、多行文本框除外
function banBackSpace(e) {
var ev = e || window.event;// 获取event对象
var obj = ev.target || ev.srcElement;// 获取事件源
var type = obj.type || obj.getAttribute('type');// 获取事件源类型
// 获取作为判断条件的事件类型
var vReadOnly = obj.getAttribute('readonly');
var vEnabled = obj.getAttribute('enabled');
// 处理null值情况
vReadOnly = (vReadOnly == null) ? false : true;
vEnabled = (vEnabled == null) ? false : true;
// 当敲Backspace键时,事件源类型为密码或单行、多行文本的,
// 并且readonly属性为true或enabled属性为false的,则退格键失效
var flag1 = ( ev.keyCode == 8 && (type == "password" || type == "text" || type == "textarea")
&& (vReadOnly == true || vEnabled == true) )?true:false;
// 当敲Backspace键时,事件源类型非密码或单行、多行文本的,则退格键失效
var flag2 = (ev.keyCode == 8 && type != "password" && type != "text" && type != "textarea")?true:false;
if (flag1 || flag2 ) {
return false;
}
}
$(function(){
document.onkeypress = banBackSpace; // 禁止后退键 作用于Firefox、Opera
document.onkeydown = banBackSpace; // 禁止后退键 作用于IE、Chrome
})
转载:http://mozilla.com.cn/post/3091/