如何在按下F1时显示javascript弹出表,并禁用Chrome的原生帮助页面?

时间:2016-10-26 12:16:53

标签: javascript html asp.net javascript-events

我创建了一个ASP.Net Web应用程序,它有一个JavaScript弹出表(即Aview2)。我的任务是在我的TxtItemCode中按 F1 按钮时显示此弹出表。我试图在按下 F1 键时显示弹出表,但它同时显示我的弹出表和默认帮助页面。我不知道如何禁用此默认帮助页面。

function popupF1() {
}

$(document).ready(function () {
  $("#TxtItemCode").keydown(function (event) {
    if (event.which ==112) {
        $("#Aview2").dialog("open");
    }
  });
});

我的TextBox如下:

<asp:TextBox ID="TxtItemCode2" runat="server" Width="54px"onkeydown="popupF2()"></asp:TextBox>

如何避免默认帮助页面?我已经为这种情况尝试了很多类型的编码(比如使用window.event.keyCode = 0;,但我不知道我应该在哪里放置代码)但我无法解决问题。

2 个答案:

答案 0 :(得分:0)

使用keydown并检查keyCode,然后使用preventDefault:

<script type="text/javascript">
$(document).ready(function(){
        $(document).on('keydown',function(ev){
            if(ev.keyCode==112){
                ev.preventDefault();
                $("#Aview2").dialog("open");
            }
        });
    });
</script>

答案 1 :(得分:0)

<script type="text/javascript">
    function popupF1(event) {
        if(event.keyCode==112){
          $("#Aview2").dialog("open");
          return false; //or event.preventDefault()

        }
    }
</script>

您可能需要使用事件列表来阻止对整个文档执行操作。

  $(document).on('keydown',function(event){
    if(event.keyCode==112){
      return false; //or event.preventDefault()
    }
  });

http://jsbin.com/foboyehiha/edit?html,js,console

文档:

https://api.jquery.com/ready/

https://api.jquery.com/event.preventdefault/