如果类型为文本,带有 Enterkeyhint 的 HTML 移动网络输入不会关注下一个输入

标签 html forms web mobile android-softkeyboard

我正在为网络应用程序开发 HTML 表单。我添加了 enterkeyhint 属性来指示并导航到下一个输入,直到最后一个输入提交表单。 问题是,如果类型为 type=textenterkeyhint 不会导航到下一个输入。 这种情况发生在 Android 7 的 Chrome/83.0.4103.101 上。在 Safari 中,会出现提示按钮,但它们都不执行任何操作。

示例:

    <form (submit)="submitForm()">
        <div>
            <label>Name</label>
            <input type="text" enterkeyhint="next" inputmode="text" />
        </div>
        <div>
            <label>Email</label>
            <input type="email" inputmode="email" enterkeyhint="next" />
        </div>
        <div>
            <label>Comments</label>
            <input type="text" />
        </div>
    </form>
  • 专注于名称输入,下一步按钮不会执行任何操作。
  • 重点关注电子邮件输入,导航到任何下一个输入(评论)

现在,如果我将 type=email 更改为 type=text,它不会导航到下一个输入。

type=tel 也会发生类似的行为。它确实导航到表单的下一个输入。

我是否缺少一些东西来完成这项工作?

谢谢

最佳答案

enterkeyhint 只是向浏览器提示虚拟键盘上显示的内容,但您需要自己实现实际行为。例如,参见Focus Next Element In Tab Index ,或How to focus next input field on keypress如果您的 DOM 足够简单,输入字段与默认 Tab 键顺序是同级的。

来自spec :

The enterkeyhint content attribute is an enumerated attribute that specifies what action label (or icon) to present for the enter key on virtual keyboards. This allows authors to customize the presentation of the enter key in order to make it more helpful for users.

规范中没有任何内容表明 enterkeyhint 实际上会影响 Enter 键的行为

关于如果类型为文本,带有 Enterkeyhint 的 HTML 移动网络输入不会关注下一个输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62490389/

相关文章:

带有数字键的 HTML 输入数组元素

javascript - 如何在启用和禁用表单提交之间切换?

c# - HTML/CSS 打印功能

javascript - getImageData 为 1 个像素返回 4 个值

javascript - 如果存在错误,使用 PHP + 验证表单不会刷新

javascript - 错误阻止嵌入式 javascript 运行

php - 将我的输出 JSON 格式化为更具可读性

web - 如何在 IntelliJ Idea 13 中创建静态 Web 项目?

javascript - 单击 Django 中的单选按钮后如何在同一页面上显示数据

PHP从html页面中提取所有文本