我有一个 HTML 选择列表,如下所示:
<div class="somebox" id="somebox">
<select name="myoptions" id="myoptions">
<option value="1">Some Text 1 </option>
<option value="2">Some Text 2 </option>
<option value="3">Some Text 3</option>
<option value="4">Some Text 4 </option>
</select>
<input type="text" name="somename1" id="somename1">
<input type="text" name="somename2" id="somename2">
</div>
并有一些 JavaScript 代码,当 #myoptions 发生变化时,它将焦点移动到下一个元素。
$("#somebox").on("change", "#myoptions", function(){
$("#somename1").focus()
});
问题是:
- 如果用户仅单击选择
列表,检查列表中的其他选项但不更改选项,如何将焦点移动到下一个元素?
(在这种情况下,焦点位于相同的选择
上,因为用户不会更改值)
这是JSFiddle创建。
注意 - 在我们的代码中,tab
键被禁用,因此用户很难将焦点移动到下一个元素。
最佳答案
这是你想要的吗?
var cc = 0;
$('#somebox').click(function () {
cc++;
if (cc == 2) {
$(this).change();
cc = 0;
}
}).change(function () {
$("#somename1").focus();
cc = -1;
});
我发现有一个类似的帖子讨论这个: useful example
关于javascript - 如果用户不更改选项,则将焦点移至下一个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27481068/