如果特定值為空,我需要防止可折疊面板顯示或打開。這似乎很容易,但我做了很多嘗試,但沒有任何效果。
HTML
<a href="#" data-bs-toggle="collapse" data-bs-target="#infoBox" aria-expanded="false" aria-controls="infoBox"></i>
<div class="collapse m-3" id="infoBox">some ifos ...</div>
第一次嘗試:
var someVal;
var infoBox = document.getElementById('infoBox')
infoBox.addEventListener('show.bs.collapse', function () {
// console.log(e.target);
if (someVal == null) return;
})
第二次嘗試:
var someVal;
var infoBox = document.getElementById('infoBox');
var bsCollapse = new bootstrap.Collapse(infoBox, {
show: false,
dispose: true
})
infoBox.addEventListener('show.bs.collapse', function (e) {
// console.log(e.target);
if (someVal == null) return bsCollapse;
})
他們都沒有作業
uj5u.com熱心網友回復:
您必須使用e.preventDefault()函式來防止默認值。
var toggle = false;
$("#wrapper").on('show.bs.collapse', function (e) {
if (!toggle) {
e.preventDefault();
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js" integrity="sha384-ka7Sk0Gln4gmtz2MlQnikT1wXgYsOg OMhuP IlRH9sENBO0LRn5q 8nbTov4 1p" crossorigin="anonymous"></script>
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3" crossorigin="anonymous">
<div id="wrapper">
<a href="#" data-bs-toggle="collapse" data-bs-target="#infoBox" aria-expanded="false" aria-controls="infoBox" id="myCollapsible">press me</a>
<div class="collapse m-3" id="infoBox">some ifos ...</div>
</div>
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/411798.html
標籤:
