<ul class="nav nav-tabs">
<li class="active"><a data-toggle="tab" href="#song">Song</a></li>
<li id="image-tab"><a href="#image" data-toggle="tab">Image</a></li>
</ul>
<div class="tab-content">
<div id="image" class="tab-pane fade ">
<input class="btn btn-default btn-sm" type="file" name="userfile" id="image">
</div>
</div>
<div id="song" class="tab-pane fade in active">
<div class="form-group">
<input id="song-link" placeholder="Paste Soundcloud link here" type="text">
</div>
</div>
<div class="form-group">
<select class="form-control">
<option value="1">Music</option>
<option value="2">Photography</option>
<option value="3">Painting</option>
<option value="4">Fashion</option>
<option value="5">Modelling</option>
</select>
</div>
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.1/js/bootstrap.min.js"></script>
当我单击其余部分时,我必须在选择音乐和歌曲选项卡时隐藏图像选项卡。我尝试使用 display none using CSS 但它没有用。
最佳答案
看看下面的方法:
$(document).ready(function() {
$(".form-control").change(function() {
setTabVisibility();
});
setTabVisibility();
function setTabVisibility() {
var selectedVal = $(".form-control").val();
if (selectedVal == "1") {
//Music selected
$("a[href='#image']").hide();
$("div#image").hide().removeClass("in");;
$("a[href='#song']").show()
$("div#song").show().addClass("in");
$('.nav-tabs a[href="#song"]').tab('show');
} else {
//other than Music selected
$("a[href='#song']").hide();
$("div#song").hide().removeClass("in");
$("a[href='#image']").show()
$("div#image").show().addClass("in");
$('.nav-tabs a[href="#image"]').tab('show');
}
}
});
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.1/js/bootstrap.min.js"></script>
<ul class="nav nav-tabs">
<li><a data-toggle="tab" href="#song">Song</a>
</li>
<li id="image-tab"><a href="#image" data-toggle="tab">Image</a>
</li>
</ul>
<div class="tab-content">
<div id="image" class="tab-pane fade ">
<input class="btn btn-default btn-sm" type="file" name="userfile" id="imageupload">
</div>
<div id="song" class="tab-pane fade in active">
<div class="form-group">
<input id="song-link" placeholder="Paste Soundcloud link here" type="text">
</div>
</div>
</div>
<div class="form-group">
<select class="form-control">
<option value="1">Music</option>
<option value="2">Photography</option>
<option value="3">Painting</option>
<option value="4">Fashion</option>
<option value="5">Modelling</option>
</select>
</div>
我们需要hide()
<a>
Tab 的标签以及需要 removeClass("in")
在显示其他选项卡之前从相应的选项卡内容。
关于javascript - 单击选择选项时如何隐藏选项卡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38054420/