Javascript 使用输入类型时=";电话:;在手机上,如何更改enter键的功能?
我有一个Javascript 使用输入类型时=";电话:;在手机上,如何更改enter键的功能?,javascript,jquery,html,jquery-mobile,mobile,Javascript,Jquery,Html,Jquery Mobile,Mobile,我有一个框type=“tel”,当用户在手机上输入一个号码并按enter键时,我想将焦点转移到选择框。但我不认为手机上有enter键,我认为该键更像是next键,但我不知道确切的键是什么。此代码适用于web浏览器,但在我的手机上,按next(下一步)键总是将焦点转移到next(下一步)框 <input type="tel" name="load1" id="load1" maxlength="4" size="7" onkeydown="if (event.keyCode == 13)
框type=“tel”
,当用户在手机上输入一个号码并按enter键时,我想将焦点转移到选择框。但我不认为手机上有enter键,我认为该键更像是next键,但我不知道确切的键是什么。此代码适用于web浏览器,但在我的手机上,按next(下一步)键总是将焦点转移到next(下一步)
框
<input type="tel" name="load1" id="load1" maxlength="4" size="7"
onkeydown="if (event.keyCode == 13) document.getElementById('numOfReps1').focus()">
<select id="numOfReps1" style="width:75px">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option selected="selected" value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
</select>
1.
2.
3.
4.
5.
6.
7.
8.
9
10
11
12
13
14
15
我认为我的问题来自于事件。keyCode==13
,因为移动版没有回车键,但我不知道真正的键是什么。更新
当用户点击“完成”按钮时,事件被触发。根据jQuery文档,和focusout
之间的区别在于后者支持事件冒泡;与前一个事件不同,前一个事件在父元素收到事件后激发
当某个元素或其中的任何元素失去焦点时,focusout事件被发送到该元素。这与模糊事件不同,因为它支持检测父元素的焦点丢失(换句话说,它支持事件冒泡)
-聚焦输出
(1)
下一步、上一步和完成移动按钮没有
e.which
或e.keyChar
。相反,您可以使用blur
事件并检查type=tel
是否输入了值。如果为true,则在您想要的任何项目上触发focus
,如果不为true,则默认情况下会转到下一个元素
$(document).ready(function () {
$("#load1").on("blur", function (e) {
if(!$(this).val() == "") { /* input isn't empty, move to target */
$("#numOfReps1").trigger("focus");
}
});
});
我不知道您使用的是jQuery Mobile,如果您正在使用它,请将.ready()
替换为pageinit
$(document).on("pageinit", function () {
/* code */
});
-模糊
(1)
(1) 在Safari Mobile上测试-iPhone 5您使用的是jquery Mobile吗?
$(document).on("pageinit", function () {
/* code */
});