在Asp.net网站开发中表单提交往往需要禁用backspace键以及其他键,避免数据输入一半,就跳转页面了。但是还是需要在text等输入框还能响应back键,从而可以删除数据。
在网上找的javascript解决此问题。很棒...亲测无问题。
document.onkeydown = check;
function check(e) {
varcode;
if (!e)var e = window.event;
if(e.keyCode) code = e.keyCode;
else if(e.which) code = e.which;
if(((event.keyCode == 8) && //BackSpace
((event.srcElement.type !="text" &&
event.srcElement.type !="textarea" &&
event.srcElement.type !="password") ||
event.srcElement.readOnly ==true)) ||
((event.ctrlKey)&& ((event.keyCode == 78) ||(event.keyCode == 82))) || //CtrlN,CtrlR
(event.keyCode == 116)) { //F5
event.keyCode = 0;
event.returnValue =false;
return false;//参考资料的原文没这行,但是发现没这行不行。。。。
}
returntrue;
}