Javascript 选中导航选项卡中的所有复选框

Javascript 选中导航选项卡中的所有复选框,javascript,ruby-on-rails,checkbox,coffeescript,Javascript,Ruby On Rails,Checkbox,Coffeescript,我做了一个checkAll函数,但当我在导航选项卡中使用它时,它也会从不活动的选项卡中选择复选框,我不希望这样。我怎样才能使它正常工作 这是我用来检查所有项目的按钮: <%= button_tag("Check", type:"button", onclick:"checkAll();", id:"check_all",class:"btn btn-default") do %> <i class="far fa-check-square"></i> &

我做了一个checkAll函数,但当我在导航选项卡中使用它时,它也会从不活动的选项卡中选择复选框,我不希望这样。我怎样才能使它正常工作

这是我用来检查所有项目的按钮:

<%= button_tag("Check", type:"button", onclick:"checkAll();", id:"check_all",class:"btn btn-default") do %>
   <i class="far fa-check-square"></i>
<% end %>
还有我的标签,在它们里面我呈现表格,这就是复选框所在的位置

<ul class="nav nav-tabs" id="myTab" role="tablist">
    <% @sectors.each do |sector| %>
        <li class="nav-item">
            <a
                <% if sector.name == "Chapa" %>
                    class="nav-link show active"
                <% else %>
                    class="nav-link"
                <% end %>
                id="<%=sector.name%>-tab" data-toggle="tab" href="#<%=sector.name%>" role="tab" aria-controls="<%=sector.name%>" aria-selected="true"><%=sector.name%>
            </a>
        </li>
    <% end %>
</ul>

<div class="tab-content" id="myTabContent">
    <% @sectors.each do |sector| %>
        <div
            <% if sector.name == "Chapa" %>
                class="tab-pane fade show active"
            <% else %>
                class="tab-pane fade"
            <% end %>
                id="<%=sector.name%>" role="tabpanel" aria-labelledby="<%=sector.name%>-tab">
            <%= render "table", items: @items[sector.name], sector: sector %>
        </div>
    <% end %>
</div>

您的javascript代码按预期工作<代码>$('input[type=“checkbox”]”)。单击()表示:单击所有复选框输入

要实现所需,您必须在活动选项卡内仅选择输入,例如:

$('.tab-content.active').find('input[type="checkbox"]').click();
或者,如果按钮位于选项卡内容内,则:

$(this).parents('.tab-content').find('input[type="checkbox"]').click();
上述代码将:
-查找具有
.tab内容的
$(this)
(这是一个按钮)的父级
-在父级中,找到所有复选框

-单击它们

您的javascript代码按预期工作<代码>$('input[type=“checkbox”]”)。单击()
表示:单击所有复选框输入

要实现所需,您必须在活动选项卡内仅选择输入,例如:

$('.tab-content.active').find('input[type="checkbox"]').click();
或者,如果按钮位于选项卡内容内,则:

$(this).parents('.tab-content').find('input[type="checkbox"]').click();
上述代码将:
-查找具有
.tab内容的
$(this)
(这是一个按钮)的父级
-在父级中,找到所有复选框

-单击它们

我刚刚需要替换.tab窗格的.tab内容,而您的js似乎对我来说运行良好。非常感谢。我只是需要替换.tab窗格的.tab内容,而你的js对我来说似乎工作得很好。非常感谢。