jquery - data-parent 属性在崩溃 Bootstrap v4-alpha 上不起作用

标签 jquery twitter-bootstrap bootstrap-4 twitter-bootstrap-4

我想在单击第二个可折叠元素后关闭第一个可折叠元素,但它不起作用。

<div class="row">
  <div class="col-md-12">
    <div id="advancedOptions">
      <p class="advanced-search-options ml-1">
        <a role="tab" data-toggle="collapse" data-parent="#advancedOptions" href="#advancedSearchOptions" aria-expanded="false" aria-controls="advancedSearchOptions">Advanced search options</a>
        or browse by
        <a role="tab" data-toggle="collapse" data-parent="#advancedOptions" href="#areaList" aria-expanded="false" aria-controls="areaList">area list</a>
      </p>

      <div class="collapse" id="advancedSearchOptions" aria-labelledby="advancedSearchOptions">
        Advanced Search Options
      </div>
      <div class="collapse" id="areaList" aria-labelledby="areaList">
        Area List
      </div>
    </div>
  </div>
</div>

JSFiddle:https://jsfiddle.net/Lppf5r2z/

最佳答案

请遵循此代码。

HTML

<div class="row">
  <div class="col-md-12">
    <div id="advancedOptions">
      <p class="advanced-search-options ml-1">
        <a role="tab" data-toggle="collapse" data-parent="#advancedOptions" href="#advancedSearchOptions" class="link-data" aria-expanded="true" aria-controls="areaList">Advanced search options</a>
        or browse by
        <a role="tab" data-toggle="collapse" data-parent="#advancedOptions" href="#areaList" class="link-data" aria-expanded="false" aria-controls="advancedSearchOptions">area list</a>
        <a role="tab" data-toggle="collapse" data-parent="#advancedOptions" href="#areaList1" class="link-data" aria-expanded="false" aria-controls="advancedSearchOptions">area list 1</a>
      </p>

      <div class="collapse div-custom" id="advancedSearchOptions" aria-labelledby="advancedSearchOptions">
        Advanced Search Options
      </div>
      <div class="collapse div-custom" id="areaList" aria-labelledby="areaList">
        Area List
      </div>
      <div class="collapse div-custom" id="areaList1" aria-labelledby="areaList">
        Area List 123
      </div>
    </div>
  </div>
</div>

jQuery:

$(document).ready(function(){
        var hide_id = "";
        $(".link-data").click(function () {
            if(hide_id != null && hide_id != ''){
                $(hide_id).hide('slow');
            }
            hide_id = $(this).attr("href");
        });
    });

或者您可以通过此代码来完成。

$(".link-data").click(function () {
    $('.collapse').collapse('hide');
});

在此 html 代码中,您只需添加 class="link-data"

<a role="tab" data-toggle="collapse" data-parent="#advancedOptions" href="#advancedSearchOptions" class="link-data" aria-expanded="true" aria-controls="areaList">Advanced search options</a>

最后一个选项比第一个更好。

关于jquery - data-parent 属性在崩溃 Bootstrap v4-alpha 上不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45157661/

相关文章:

javascript - Fancybox 2.0 和 Youtube 视频

css - 如何在小型设备中更改部分的高度

html - Bootstrap 4 .sticky-top 对 thead 的更改

javascript - 在滚动条上更改图像 Logo

php - 复选框 Action 事件

javascript - 使用 jQuery 删除具有相同类名的多个表

php - Jquery 自动完成中的通知

html - 如何使用 bootstrap 3 将 3 列与行中心的最大宽度对齐?

angularjs - AngularUI Bootstrap 模态打开事件

css - Bootstrap 4 导航事件链接颜色