.Net - 当用户单击“Backspace”键盘按钮时,禁用返回一页

时间:2011-11-11 13:40:37

标签: javascript browser navigation

基本上有时我需要显示一个预先填充了记录的表单。根据用户权限,他可能会也可能无法编辑数据。

我遇到的问题是,有时用户会尝试编辑已被禁用的文本框,方法是单击它并按“退格”按钮编辑文本。这导致浏览器返回一页......烦人。

3 个答案:

答案 0 :(得分:3)

如果它是asp .net你就可以这样做:

<script language=javascript>   

    function cancelBack()   
    {   
        if ((event.keyCode == 8 ||    
           (event.keyCode == 37 && event.altKey) ||    
           (event.keyCode == 39 && event.altKey))   
            &&    
           (event.srcElement.form == null || event.srcElement.isTextEdit == false)   
          )   
        {   
            event.cancelBubble = true;   
            event.returnValue = false;   
        }   
    }   

</script>   
<body onkeydown=cancelBack()>   

答案 1 :(得分:1)

你需要在javascript中捕获键盘事件并阻止它执行。您正在使用的服务器端代码(ASP.NET)没有什么区别。

window.onkeydown = function(event) {
 if(event.keyCode == 8)
    return false;
}

刚刚在Chrome中测试过它似乎正常工作

答案 2 :(得分:0)

如果有的话,将其放在文档准备功能下

window.onkeydown = function (event) 
{
          if (event.keyCode == 8) {
              return false;
          }
}