iPhone(IoS)上无法触发“ keyup change keypress click tap”中的jQuery

时间:2018-12-27 09:50:06

标签: jquery ios

我有一个基于JQuery的Web应用程序,旨在在台式机和移动设备上工作。我有一个输入字段:

<input id="account_id" name="account_id" type="text" class="form-control" pattern="^[A-Za-z0-9]{2}-[0-9]{4}-[0-9]$" maxlength="9" style='text-transform:uppercase' required></input>

<button name="search" id="search" type="button" class="btn btn-primary pull-right width-40" disabled>Search</button>

我希望作为用户类型进行验证,以便在他们输入有效输入后显示搜索按钮,然后他们必须单击键盘上的“完成”或离开输入:

me.accountIdBox().on("keyup change keypress click tap",function() {
    me.onChangeAccountId();
  })

它在装有IOS 10.3的iPad上运行良好,但在具有相同版本的iPhone上却无法运行。

它不适用于带有IOS 12.1.x的iPhone或iPad-除了带有外部键盘的iPad以外。

知道这是什么问题吗?

1 个答案:

答案 0 :(得分:1)

看来您正在跟踪的事件已被input事件覆盖。您应该重构为监听此单个事件,如下所示:

me.accountIdBox().on("input", function() {
  me.onChangeAccountId();
});