选项卡内容不变

Tab Content not changing

本文关键字:选项      更新时间:2023-09-26

我正在尝试在页面中制作不同的选项卡,所有选项卡的正文中都有不同的内容。但是,当我单击新选项卡时,正文没有变化。有人有什么建议吗?它更改了页面,但每个页面的正文都是一样的,我不确定为什么。不确定是我在 html 中设置选项卡的方式,还是需要使用 java 更改的内容。任何帮助将不胜感激。

<!DOCTYPE html>
<html>
<head>
        <script        src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
    <link rel="stylesheet" type="text/css" href="./common/res.css"/>
    <meta charset="utf-8">
    <title>Room Reservation</title>
</head>
<header>
    <script type="text/javascript" src="./common/tab.js"></script>
</header>
<body>
    <div class="tabs">
        <ul class="tab-links">
            <li class="active"><a href="#tab1">Stage</a></li>
            <li><a href="#tab2">Studio</a></li>
            <li><a href="#tab3">Session</a></li>
        </ul>
<div class="tab-content">
    <div id="tab1" class="tab active">
        <form>
            Room Selection:<br>
            <select name="room">
                <option value="">Select Room</option>
                <option value="stage">Stage Access</option>
                <option value="grip">Grip Closet</option>
                <option value="grid">Grid</option>
        </form>
    </div>
    <div id="tab2" class="tab">
        <p>Studio</p>
    </div>
    <div id="tab3" class="tab">
        <p>Session</p>
    </div>
</div>
</div>
<script>
jQuery(document).ready(function() {
    jQuery('.tabs .tab-links li').on('click', function(e)  {
    tabs(jQuery(this).attr('data-toggle'));
    jQuery(this).addClass('active').siblings().removeClass('active');
    });`
    function tabs(tab) {
        jQuery('.tab-content .tab').hide()
        jQuery('.tab-content').find(tab).show();
    }
});
</script>
</body>
</html>

/*----- Tabs -----*/
.tabs {
width:100%;
display:inline-block;
}
/*----- Tab Links -----*/
/* Clearfix */
.tab-links:after {
    display:block;
    clear:both;
    content:'';
}
.tab-links li {
    margin:0px 5px;
    float:left;
    list-style:none;
}
    .tab-links a {
        padding:9px 15px;
        display:inline-block;
        border-radius:3px 3px 0px 0px;
        background:#7FB5DA;
        font-size:16px;
        font-weight:600;
        color:#4c4c4c;
        transition:all linear 0.15s;
    }
    .tab-links a:hover {
        background:#a7cce5;
        text-decoration:none;
    }
li.active a, li.active a:hover {
    background:#fff;
    color:#4c4c4c;
}
/*----- Content of Tabs -----*/
.tab-content {
    padding:15px;
    border-radius:3px;
    box-shadow:-1px 1px 1px rgba(0,0,0,0.15);
    background:#fff;
}
    .tab {
        display:none;
    }
    .tab.active {
        display:block;
    }

这是你的jquery代码正确,一些括号没有正确关闭

$(document).ready(function(){
  function tabs(tab) {
    jQuery('.tab-content .tab').hide()
    jQuery('.tab-content').find(tab).show();
  }

$('.tabs .tab-links li').on('click', function(e)  {
    tabs($(this).attr('data-toggle'));
    $(this).addClass('active').siblings().removeClass('active');

  });
});

结果:jsfiddle