【问题标题】:know the suggestion is opened知道建议已打开
【发布时间】:2012-03-30 06:25:37
【问题描述】:

我有一个没有提交按钮的 html 表单。我想在点击 ENTER 按钮时提交该表单。我使用一个简单的 jquery 代码在按 ENTER 后提交表单。

$("form :input").keypress(function(e)
{
    if(e.keyCode == 13)
    {
        $(this).parents('form').submit();
    }
});

但是这段代码有问题。当我在文本字段中输入并希望使用“ENTER”键为该字段选择一个建议(这些是浏览器根据该字段的历史建议的建议)时,它会触发当前表单的提交。我也想跳过这个。

在 jquery 或 javascript 中有类似的东西

$("form :input").keypress(function(e)
{
    if(e.keyCode == 13)
    {
        if(! $(this).is('suggestOpened'))    // i want something like this
        {
             // submit the form
        }

    }
});

提前致谢。

【问题讨论】:

标签: javascript jquery forms input


【解决方案1】:

不,没有这样的事件。您可以使用onchangeonblur 事件来拦截用户是否正在填写特定字段,但无论如何都没有提交按钮:

  • 用户无法弄清楚如何提交表单

  • 相同的操作(输入按键)可能会导致两个不同的操作,这会破坏 UI 的一致性

恕我直言,您绝对应该放置一个提交按钮。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-30
    • 1970-01-01
    • 1970-01-01
    • 2014-10-01
    • 2016-07-29
    • 2020-11-30
    相关资源
    最近更新 更多