如何指定输入键与点击相同的功能?

时间:2015-03-16 20:26:52

标签: jquery

我正在尝试让输入密钥执行与用户单击按钮时相同的任务(请参阅jquery)。但是,当我尝试“keyup”和其他事件处理程序时,我无法正常工作。有关最简单方法的任何想法吗?

感谢您的耐心和帮助。

请参阅小提琴:https://jsfiddle.net/LightYearsAway/qg8f3q37/3/

HTML

<h3>Needs</h3>
<input type="text" id="need-input" placeholder="enter text">
<button id="btn1">Need it!</button>
<ul id="need-list">
    <li>a</li>
    <li>b</li>
    <li>c</li>
    <li>d</li>
    <li>e</li>
</ul>

JS

$(document).ready(function(){

  // click button, add to list

  $("#btn1").click(function(){
      $("#need-list").append($("<li>", { text: $("#need-input").val()
      }));
  });

  // click list item to hide

  $('ul').on('click', 'li', function(event) {
      $(this).slideUp();
  });

});

3 个答案:

答案 0 :(得分:0)

试试这个:

$("#need-input").on("keydown", function(e) { 
    if(e.keyCode == 13)
        $("#btn1").click() 
});

https://jsfiddle.net/qg8f3q37/4/

答案 1 :(得分:-1)

答案 2 :(得分:-1)

$("#need-input").keyup(function (e) {
    var code = e.which; // recommended to use e.which, it's normalized across browsers
    if (code == 13) e.preventDefault();
    if (code == 32 || code == 13 || code == 188 || code == 186) {
        $("#need-list").append($("<li>", {
            text: $("#need-input").val()
        }));
    }
});

回答:(jQuery - keydown / keypress /keyup ENTERKEY detection?