如何使用javascript或jquery在html页面中禁用esc键

时间:2011-07-18 06:22:10

标签: javascript jquery jquery-ui jquery-ui-dialog

我想在HTML页面中禁用ESC键。我怎么能这样做?

我有一个表单,显示为jQuery UI Dialog。如果我单击ESC键,表单将关闭。我想禁用它。

3 个答案:

答案 0 :(得分:12)

浏览器(FirefoxChrome ...)通常将 Esc 键绑定到“停止加载当前页面”操作。任何其他行为都需要使用JavaScript进行专门编码。

jQuery UI对话框具有closeOnEscape设置。只需将其设置为false

即可
  • 使用指定的closeOnEscape选项初始化对话框:

    $( ".selector" ).dialog({ closeOnEscape: false });
    
  • 在init:

    之后获取或设置closeOnEscape选项
    //getter
    var closeOnEscape = $( ".selector" ).dialog( "option", "closeOnEscape" );
    //setter
    $( ".selector" ).dialog( "option", "closeOnEscape", false );
    

答案 1 :(得分:8)

$(document).keydown(function(e) {
    if (e.keyCode == 27) return false;
});

*感谢Johan

答案 2 :(得分:4)

执行此操作的最佳方法是找出您正在使用的对话框库(colorbox?jquery ui?shadowbox)并禁用esc键(例如,在Colorbox中您可以设置escKey选项为false)。