【问题标题】:jquery - "click" on keypress?jquery - “点击”按键?
【发布时间】:2010-12-31 22:57:24
【问题描述】:

我有一个 ajax 搜索表单,如果您在输入邮政编码时单击“提交”,然后单击“输入”按钮并立即弹出结果,则该表单可以正常工作。我正在努力做到这一点,如果用户在键盘上按下“enter”,它具有相同的效果。好像正在提交,但是没有结果...

我试过了:

  if($('#search').length) {
        $('#zipcode').keyup(function(e) {
          if(e.keyCode == 13) {
        e.preventDefault();
            $('#search').submit();
          }
        });
  }

【问题讨论】:

  • 你不应该为此需要 javascript。浏览器通常会自动执行此操作

标签: jquery click keypress enter


【解决方案1】:

您不应该“伪造”点击。确保您的“输入”按钮是:

<input type="submit">

或者

<button type="submit">

它应该在按下回车键时提交表单。

另一个潜在问题是 Ajax 代码绑定到按钮的单击事件,而不是表单的提交事件。

$('button').click(...); // is wrong
$('form').submit(...); // is right 

【讨论】:

    【解决方案2】:

    使用不带参数的 .click()

    【讨论】:

    • 这有什么帮助?如果您单击按钮,它已经工作了。如果用户在键盘上按回车,我希望它能够工作......使用点击如何实现?
    • 对...您想模拟点击...所以,就像您使用 if (event.keycode == 13) $('#submit').click( );点击提交按钮。这不是你要问的吗?
    • 他建议您通过执行类似$('#submitButton').click(); 的操作自己调用点击事件。
    • 您还应该查看 jquery ui 的自动完成功能。它做了(我认为)你想要用这个来完成的事情
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-25
    • 2017-07-27
    • 1970-01-01
    • 1970-01-01
    • 2021-07-10
    相关资源
    最近更新 更多