2015-02-09 322 views

回答

0

你可以试试这个代码:

$('#yourButtonId').keypress(function(event) { 
    if (event.which == 13) { 
     event.preventDefault(); 
    } 
}); 

希望这会有所帮助。

+0

按键不会注册一个输入。使用keydown。 – Mouser 2015-02-09 14:12:49

+0

OP似乎没有使用jQuery,使用vanilla JS。 – Teemu 2015-02-09 14:15:24

2
document.getElementById("countButton").onkeydown = function(e){ 
if (e.which == 13) //13 is the keycode referring to enter. 
    { 
     e.preventDefault(); //this will prevent the intended purpose of the event. 
     return false; //return false on the event. 
    } 
} 

这可以防止通过输入执行按钮。

高级解决方案。回车只允许一次。用户必须放开输入按钮才能重置。

var enterPressed = 0; 
document.getElementById("countButton").onkeydown = function(e){ 
    if (e.which == 13) 
     { 
     if (!enterPressed) 
     { 
      enterPressed = 1; 
      return true; 
     } 
     else 
     { 
      e.preventDefault(); 
      return false; 
     } 


    } 
} 

document.getElementById("countButton").onkeyup = function(e){ 
    if (e.keyCode == 13) 
    { 
     enterPressed = 0; 

    } 
} 

通常我会主张用addEventListener,然而,这是这样一个简单的网站,目的只有一个,内联的事件在这里是没有问题的。