按Enter键如何触发输入类型按钮

时间:2012-10-30 20:33:28

标签: jquery jquery-ui button jsf-1.2

在JSF 1.2中我正在使用h:commandButton type =“button”但是当我选中它时按钮不会触发并按下回车键。我尝试使用onkeypress="keyEnter(event)"

     function keyEnter(eve){
         if (eve.keyCode == 13) {
              document.getElementById(eve.target.id).click();
          }
          return false;
      }

按下回车键时触发按钮。现在这里是我的问题,我有很多h:带有类型按钮的commandButton元素,为了实现keyEnter(eve)到按钮类型的所有元素,我该怎么做?

提前致谢。

4 个答案:

答案 0 :(得分:3)

试试这个

完整代码

function keyEnter(eve){
    var key = eve.keyCode || eve.which;
     if (key == 13) {
         document.getElementById(eve.target.id).click();
     }
      return false;
};

绑定所有你可以做到这一点

$('input[type="button"]').on("keyenter",function(eve){
     var key = eve.keyCode || eve.which;
     if (key == 13) {
          $(this).click();
      }
      return false;        
});

答案 1 :(得分:0)

要绑定侦听器,请使用on

$(document).on("keyup","button", function(eve){
      if (eve.keyCode == 13) {
          $("#" + eve.target.id).trigger("click");
      }
      return false;        
});

同时

使用jQuery,您可以使用trigger()函数:

$("#" + eve.target.id).trigger("click")

或使用.click()(这是上述的快捷方式),如下所示:

$("#" + eve.target.id).click()

答案 2 :(得分:0)

您可以使用on()keyenter事件处理程序绑定到文档中的所有按钮:

$(document).on("keyenter","button", function(eve){
      if (eve.keyCode == 13) {
          document.getElementById(eve.target.id).click();
      }
      return false;        
});

相应调整。

答案 3 :(得分:0)

要将事件实现到所有按钮元素,您可以这样做:

$('button').each(function(){
     $(this).keypress(function(){
         if (eve.keyCode == 13) {
             $(this).click(); 
          }
          return false;
      }
});