javascript - 如何用javascript改变div的内容

标签 javascript html function radio-button onchange

这看起来很简单,但我不知道我到底在做什么。我有 2 个单选按钮,根据选择的是哪个,div 的内容会发生变化。现在我在父 div 中有 2 个 div,但它只会隐藏一个 div 并显示另一个。如果它们即使在隐形时也不占用空间,那也不错。

HTML:

<div>
    <form role="form">
        <div>
            <div class="radio" id="radioSelection" onchange="chooseDiv()">
                <label>
                    <input type="radio" name="optradio" id="selectionDiv1" checked />Choose Div1
                </label>
                <label>
                    <input type="radio" name="optradio" id="selectionDiv2" />Choose Div2
                </label>
            </div>
        </div>
    </form>
</div>

<div id="parentDiv">
    <div id="div1">You're Awesome!</div>
    <div id="div2">Everybody loves you!</div>
</div>

JavaScript:

function chooseDiv() {
    if (document.getElementById("selectionDiv1").checked) {
        document.getElementById("div2").style.visibility = "hidden";
        document.getElementById("div1").style.visibility = "visible";
    } else {
        document.getElementById("div2").style.visibility = "visible";
        document.getElementById("div1").style.visibility = "hidden";
    }
}

因此,我希望根据选中的单选按钮一次只显示一个 div,并且当它们不在 div 中时不要让它们占用空间。谢谢!

最佳答案

如果你想让那些 div 停止占用空间,你必须使用 display:none 而不是 visibility:hidden,将你的函数更改为

function chooseDiv() {
    if (document.getElementById("selectionDiv1").checked) {
        document.getElementById("div2").style.display = "none";
        document.getElementById("div1").style.display = "block";
    } else {
        document.getElementById("div2").style.display = "block";
        document.getElementById("div1").style.display = "none";
    }
}

工作计划:http://plnkr.co/edit/H4C9C7dAD324qJUgESMF?p=preview

关于javascript - 如何用javascript改变div的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31122718/

相关文章:

javascript - 如何正确处理 JSON 和 HighCharts 中的日期对象?

javascript - 设置滚动位置以在 Xamarin.Ios 中搜索字符串

html - 横幅在移动设备上太小

html - CSS冲突,网站没有意义。属性不适用于某些 div

sql - 我可以用一种方法编辑多个SQL表吗?

c - f(&a) 可以在 C 中运行吗?

javascript - MechanicalSoup(python 3x)可以处理网站中的javascript吗?

javascript - 为什么我的脚本文件在index.ejs 中不起作用?

jquery - 图像在滚动和 fullPage.js 上变化

javascript - 将函数从 obj 传递到数组。然后将数组相加,但结果为 NaN。为什么?