单选下拉框,选中特定的值触发显示后面的div

此代码使用onchange,而不是onclick,onclick是点击立即触发
定义一个JavaScript函数showDiv(),该函数会在下拉框选择发生变化时触发。通过使用document.getElementById()方法获取下拉框和div元素的引用。

然后,根据下拉框的选中值,使用style.display属性来设置div元素的显示/隐藏。当下拉框选中值为"0"时,将display属性设置为"block"以显示div;当下拉框选中值为"1"时,将display属性设置为"none"以隐藏div

最后,在HTML代码中放置一个下拉框和一个div,并为下拉框添加onchange事件,当下拉框的选中值发生变化时,调用showDiv()函数。

<script>
function showDiv() {
    // 获取下拉框的选中值
    var selectedValue = document.getElementById("mySelect").value;
    
    // 获取要显示/隐藏的div元素
    var divElement = document.getElementById("myDiv");
    
    // 根据选中值设置div的显示/隐藏
    if (selectedValue === "0" || selectedValue === "1") {
        divElement.style.display = "block"; // 显示div
    } else {
        divElement.style.display = "none"; // 隐藏div
    }
}
</script>

<select id="mySelect" onchange="if (this.value !== '') showDiv()">
    <option value="">请选择</option>
    <option value="0">选项1</option>
    <option value="1">选项2</option>
</select>

<div id="myDiv" style="display: none;">
    这是要显示/隐藏的内容
</div>

还有一种实现方式显得更优雅:

<style>
.hidden-div {
  visibility: hidden;
}
</style>

<div id="myDiv" class="hidden-div">
  <p>这是隐藏的 div 元素</p>
  <input type="text" value="隐藏元素">
</div>

<script>
var myDiv = document.getElementById("myDiv");
myDiv.classList.remove("hidden-div");

// 获取隐藏的输入框的值
var input = myDiv.querySelector("input");
console.log(input.value);
</script>

我们首先定义了一个 CSS 类 .hidden-div,并将其应用到

元素中。该类使用 visibility: hidden; 将元素隐藏起来。

然后,通过 JavaScript 中的 classList.remove() 方法,从

元素中移除了 .hidden-div 类,使其显示出来。

最后,使用 querySelector() 方法来获取隐藏的

中的 元素,并通过 value 属性获取其值。

通过这种方式,可以将

元素进行隐藏,但 仍然能够访问其中的子元素及其属性
如果引入了jQuery库,获取select单选框的值更方便:

var selectedValue = $("#mySelect").val();//value
var selectedtext = $("#mySelect option:selected").text();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

见未见过的风景

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值