javascript - 我们可以触发 tabkey 事件以将光标移动到 select2 的下一个元素吗

标签 javascript jquery triggers

我只想触发 tabkey 事件,而不是关注下一个元素。下面是我试过的代码 它在 select2 之后没有聚焦。这就是为什么我试图调用 tabkey 事件。

$('select').select2({
  placeholder: 'Select a month'
});

jQuery.extend(jQuery.expr[':'], {
  focusable: function(el, index, selector) {
    return $(el).is('a, button, :input, [tabindex]');
  }
});
$(document).on('keydown', ':focusable', function(e) {
  if (e.which == 13 && this.tagName.toLowerCase() != "textarea") {
    e.preventDefault();
    $(this).trigger({
      "type": 'keypress',
      which: 9
    })
  }
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://rawgit.com/select2/select2/master/dist/js/select2.js"></script>

    <link href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.5/css/select2.min.css" rel="stylesheet" type="text/css"> 
<form>
  <input type="text" class="form-control">
  <input type="text" class="form-control">
  <input type="text" class="form-control">
  <input type="text" class="form-control">
  <input type="text" class="form-control">
  
  <select >
    <option value="JAN">January</option>
    <option value="NOV">November</option>
    <option value="DEC">December</option>
</select>

<select >
    <option value="JAN">January</option>
    <option value="NOV">November</option>
    <option value="DEC">December</option>
</select>
</form>

最佳答案

您可以将自定义参数传递给您的虚构事件,然后监听所有输入(最好是委托(delegate))tabkey keypress,如果事件有特殊参数,则 e .preventDefaults() 所以焦点不会改变。

关于javascript - 我们可以触发 tabkey 事件以将光标移动到 select2 的下一个元素吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55468067/

相关文章:

php - mysql与php在表中添加一行

javascript - 将两个数组组合成 JSON 中的一个对象

javascript - react Redux reducer : 'this.props.tasks.map is not a function' error

javascript - D3.js 在径向树中添加元素之间的链接(分层边缘捆绑元素)

javascript - 如何删除d3饼图

javascript - 在悬停子列表上下拉而不扩展 div 的高度

javascript - 在 jQuery 中将一些项目附加到一个 div,并将其余的附加到另一个 div

javascript - 用完整 URL 替换根相对链接

oracle - ORA-04091: 表 [blah] 正在发生变化,触发器/函数可能看不到它

mysql - 如何在触发器PL/SQL中拆分设置值并插入每一行?