jQuery:在输入字段的按键上触发一个动作

时间:2014-11-20 08:14:39

标签: jquery

我有一个小的输入窗口,ID为"#property_id"。我正在尝试实现运行函数" mapSettleTime()"按下回车键。以下代码无效。有什么建议?

$('#property_id').keypress(function(e) {
  if(e.which == 13) {
    mapSettleTime();
  }
});

5 个答案:

答案 0 :(得分:2)

添加keyCode:

$('#property_id').on('keypress',function(e) {
  if(e.which == 13 || e.keyCode == 13) {
    mapSettleTime();
  }
});

答案 1 :(得分:1)

我有类似的问题。得到这样的工作:

$('body').keypress(function (e) {
    var key = e.which;
    if ($("#YOURID").is(':focus')) {
        if(key == 13)  // the enter key code
        {
            // Do something like mapSettleTime();
        }
    }
});

我必须将监听器附加到正文并检查我的输入字段是否已被聚焦。 将侦听器附加到字段本身不起作用。 (不知道为什么)

答案 2 :(得分:1)

$('#property_id').keypress(function(e) {
  if(e.keyCode==13)
  {
    mapSettleTime();
  }
});

答案 3 :(得分:1)

$('#property_id').bind('keypress',function(e) {
   if(e.which == 13 || e.keyCode == 13) {
      mapSettleTime();
   }
});

答案 4 :(得分:1)

这实际上是有效的:

$(document).on('keydown','#property_id', function(e) {
  if(e.which == 13 || e.keyCode == 13) {
    mapSettleTime();
  }
});