You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让所有.tab-nav-wrapper-report下的active标签对应内容全部显示?

解决多Tab模块Active标签内容无法全部显示的问题

原代码的问题在于,$(".tab-nav-wrapper-report li.active a").attr("href")只会返回第一个匹配元素的href属性值,导致只有第一个Tab模块的Active内容被显示,第二个模块的对应内容未被触发。

要让所有.tab-nav-wrapper-report li.active对应的Tab内容都显示,需要遍历每一个匹配的Active项,逐个处理:

修改后的jQuery代码

$(document).ready(function() {
    // 遍历所有active的tab项
    $(".tab-nav-wrapper-report li.active").each(function() {
        $(this).click(); // 触发点击事件
        // 获取当前项的href,找到对应内容并显示
        $($(this).find("a").attr("href")).show();
    });
})

完整代码示例

HTML部分

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="tab-controls-report mt-4">
  <div class="tab-nav-wrapper-report">
    <ul>
      <li class="active" data-id="1">
        <a href="#2_1">Test3</a>
      </li>
      <li>
        <a href="#3_1" data-id="1">Test4</a>
      </li>
    </ul>
  </div>
  <div class="tab-content-wrapper-report">
    <div id="2_1" class="tab-content" style="display:none;">
      //Something in here
    </div>
  </div>
</div>
<div class="tab-nav-wrapper-report">
  <ul>
    <li class="active" data-id="2">
      <a href="#2_2">Test1</a>
    </li>
    <li>
      <a href="#3_2" data-id="2">Test2</a>
    </li>
  </ul>
</div>
<div class="tab-content-wrapper-report">
  <div id="2_2" class="tab-content" style="display:none;">
    //Something in here
  </div>
  <div id="3_2" class="tab-content" style="display:none;">
    //Something in here
  </div>
</div>

JavaScript部分

$(document).ready(function() {
    $(".tab-nav-wrapper-report li.active").each(function() {
        $(this).click();
        $($(this).find("a").attr("href")).show();
    });
})

核心逻辑是用.each()方法遍历所有符合条件的Active标签,对每个标签单独执行点击触发和内容显示操作,确保每个模块的Active内容都能被正确激活。

内容的提问来源于stack exchange,提问作者nnmmss

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 17:11:10