想要在选中复选框时显示特定div,如果未选中则隐藏div。不工作IE8 / IE9

时间:2012-02-17 09:14:00

标签: javascript internet-explorer-8 internet-explorer-9

我有一个复选框。如果我选中复选框,那么我想显示一个特定的div,如果它未被选中,则隐藏div。有人可以帮我这个。我已经为此完成了代码并在Firefox中正常工作。但它不适用于IE8 / IE9。为什么?有人可以帮忙吗在此先感谢。

<script language="javascript">
function showIPAddress(chkbox) {

    //var chkbox = document.getElementById("chk1");
    if(chkbox.checked == true) {
            document.getElementById("div1").style.display = "block";
    }
    else {
            document.getElementById("div1").style.display = "none";
    }
}
</script>

<input type="checkbox" id="chk1" name="chk1" value="1" onClick="showIPAddress(this)" /> <b class="account">Test Checkbox</b>


<div id="div1" name="div1" style = "display:block">
    <b>IP Address: </b><input name="ip"></input>
</div>

3 个答案:

答案 0 :(得分:2)

我使用更简单的代码来实现它:

<script>
  function showIPAddress(chk) {
      document.getElementById("div1").style.display = chk.checked ? "block" : "none";
  }
</script>
<input type="checkbox" id="chk1" value="1" onClick="showIPAddress(this);" /> <b class="account">Test Checkbox</b>

<div id="div1" style="display:none;">
    <b>IP Address: </b><input name="ip"></input>
</div>

答案 1 :(得分:1)

试试这个:

if(chkbox.checked == true) {
        document.getElementById("div1").style.display = "";
}
else {
        document.getElementById("div1").style.display = "none";
}

答案 2 :(得分:0)

不太确定,但你试过这个:

document.getElementById("div1").style.visibility="visible"/"hidden".

而不是onClick,它应该是onclick