javascript - 迭代 Jquery 中启用的选项卡

标签 javascript jquery

我可以使用以下代码迭代所有选项卡

$('#tabs .ui-tabs-nav a').each(function() {
      var id = $(this).attr('href');
}

(由 https://forum.jquery.com/topic/how-to-iterate-through-tabs 提供)

我可以使用以下代码检查选项卡是否通过其索引启用

function isDisabled(index) {
  return $.inArray(index, $("#tabs").tabs("option", "disabled")) > -1;
}

(由 How to know if a tab is enabled on jQuery tabs? 的 Nick Craver 提供)

如何迭代所有已启用的选项卡?

最佳答案

您可以使用 $.filter 删除禁用的过滤器,然后使用 $.each 删除剩余的过滤器:

$('#tabs .ui-tabs-nav a').filter(function(index) {
    return !isDisabled(index);
}).each(function() {
  var id = $(this).attr('href');
});

或者你可以$.not:

$('#tabs .ui-tabs-nav a').not(isDisabled).each(function() {
  var id = $(this).attr('href');
});

关于javascript - 迭代 Jquery 中启用的选项卡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32210281/

相关文章:

jquery - JQuery 库通常如何包含在网页中 - 全部还是部分?

javascript - JQuery JEditable - 如何禁用点击编辑

javascript - Angular2 路由错误/缺少组件

javascript - jQuery 动画背景位置不会改变但 css 会

asp.net - 使用 jQuery 和 ajax 将整数列表传递给 WebMethod

javascript - 如何将数据从 ajax 加载到 Chosen jquery?

javascript - 未捕获的类型错误 : Cannot use 'in' operator to search for '161' in

javascript - 停止打开外部窗口

javascript - 使用 jQuery 键入时减小 TextArea 中文本的大小

javascript - 使用 document.write() 编写带有类的 <div>