javascript - 如果用户不更改选项,则将焦点移至下一个字段

标签 javascript jquery html

我有一个 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;
});

fiddle

我发现有一个类似的帖子讨论这个: useful example

关于javascript - 如果用户不更改选项,则将焦点移至下一个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27481068/

相关文章:

Javascript 图像在 Firefox 和 Chrome 中不显示

javascript - 如何使用 url 参数过滤图库

JavaScript 倒计时到小时

html - 使用 HTML 和 CSS 将 .MP4 视频作为背景

javascript - 在表格单元格内循环对象并创建无序列表

javascript - IE 无法在某些页面上加载 jQuery 扩展

JQuery 滚动到页面顶部

javascript - 删除 Firefox SDK 工具栏的关闭按钮

javascript - 使用 HTML5、CSS3 和 Javascript 开发 Windows Phone 8.1 应用程序

javascript - Bootstrap 将按钮添加到 BrowserPalette 并使其持久化