javascript - keydown 不会在移动设备上触发 Chrome

标签 javascript jquery asp.net

我有以下代码 - 目前,当我试图找出这个问题的根源时,它有一些临时警报。

该功能基于Asp.Net 文本框和RequiredFieldValidator。这个想法是,当按下“输入”时,我会获取文本框的状态并执行某些操作。

现在,这是奇怪的地方:

如果我在文本框中使用标准 type="text"- 我实际上并没有添加它,它只是默认值,它适用于所有浏览器/设备。

通过作品,我的意思是如果我没有在文本框中输入有效的条目,即任何内容,则应该显示错误。

如果我使用 type="tel"或 type="number",它适用于 Firefox 和 Chrome 桌面版,但不适用于移动版 Chrome。

如果我按照下面的代码添加警报,移动设备也可以工作。

function enterKeyPressed(e) {
        alert("function called");
        if (e.which == 13) {
            alert("enter pressed");
            var isValid = updateInputState.call(this, false);
            alert(isValid);
            if (isValid) {
                var next = findNextTabStop.call(this);
                next.focus();
            }
        }
    }

有人知道我可以从哪里开始吗?

最佳答案

这对我有用 - 桌面、移动和所有 html5 输入类型。

function enterKeyPressed(e) {
        if (e.which == "13") {
            e.preventDefault();
            // Do something
        }
    }

关于javascript - keydown 不会在移动设备上触发 Chrome,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38662188/

相关文章:

jquery - AJAX - 仅当有新数据时才获取

jquery - 使用 Zurb Foundation 以编程方式更改自定义表单下拉列表

jquery - 谁能告诉我这个 Jquery 脚本哪里出错了

c# - 在旧 ASP.NET 4.8 中读取和传播 TraceId

Javascript 获取日期 30 天前

javascript - 如果我突出显示文本,则取消 onclick 事件

javascript - 根据某些条件禁用或启用按钮

ASP.NET 挂起 - 通用字典并发问题导致 GC 死锁

javascript - 在 Javascript 中格式化来自 Restful Service 的日期

javascript - 使用 AngularJS 中的链接覆盖单击表