[英]show div and hide another div using checkbox
checkbox1
时,我需要隐藏div1
并显示div2
我用下面的代码,但没有用
<script type="text/javascript">
function valueChanged() {
if ($('.checkbox1').is(":checked"))
$(".div2").show();
else
$(".div1").hide();
}
</script>
HTML
<input type="checkbox" name="checkbox1" onchange="valueChanged()" />
<div class="row" id="div1">Show Div 1</div>
<div class="row" id="div2" style="display: none">Show Div 2</div>
相反,您可以只使用toggle()
function valueChanged() { $('.row').toggle(); }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <input type="checkbox" name="checkbox1" onchange="valueChanged()" /> <div class="row show" id="div1">Show Div 1</div> <div class="row" id="div2" style="display: none">Show Div 2</div>
如果您想保留它基于JS的逻辑,那是不正确的。 以下更正:
HTML更新:
<input id="checkbox1" type="checkbox" name="checkbox1" onchange="valueChanged()">
<div class="row" id="div1">Show Div 1</div>
<div class="row" id="div2" style="display: none;">Show Div 2</div></div>
使用Javascript:
<script type="text/javascript">
function valueChanged() {
if ($("#checkbox1").is(":checked")) {
$("#div2").show();
$("#div1").hide();
} else {
$("#div1").show();
$("#div2").hide();
}
}
</script>
如果您只想使用CSS来实现,则也可以在复选框中添加类或ID,并使用~
选择器。 您还希望删除div2上的嵌入式显示。
#div2 { display:none; }
#checkbox:checked ~ #div1 { display:none; }
#checkbox:checked ~ #div2 { display:block; }
您的代码不正确。 应该是这样的:
function valueChanged() { if ($('#checkbox1').is(":checked")) { $("#div1").hide(); $("#div2").show(); } else { $("#div1").show(); $("#div2").hide(); } } // OR you could just use toggle() function valueChanged2() { $('.row').toggle(); }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> <input type="checkbox" id="checkbox1" onchange="valueChanged()" /> <div class="row" id="div1">Show Div 1</div> <div class="row" id="div2" style="display: none">Show Div 2</div>
您使用的元素访问不正确
<script type="text/javascript">
function valueChanged() {
if ($(this).is(":checked"))
$("#div2").show();
else
$("#div1").hide();
}
</script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.