单击按钮时隐藏后续div

时间:2018-03-06 01:55:09

标签: javascript html

我有一系列具有单选按钮的div和一个“下一个”按钮,用于指定表单从那里开始的位置。

现在,下一个按钮是“加号”按钮,后退按钮是“减号”按钮。 “减号”按钮用于隐藏附加的div而不是后续的div。当用户选择“减号”按钮时,如何使用它以便隐藏表单的其余部分?

我只包括其中一个仅包含几个div的函数,但假设它们从0到11。如果单击减号按钮,则应隐藏1-11。

var image = document.getElementById("plus");

function changeSign(id) {
    var image = document.getElementById(id);

    if (image.getAttribute('src') == "image/plus_btn.png") {
        image.src = "image/minus_btn.png";
        console.log("Showing");
    } else {
        image.src = "image/plus_btn.png";
    }
}

function show1(id) {
    changeSign(id);
    var image = document.getElementById(id);
    if (image.getAttribute('src') == "image/plus_btn.png") {
        console.log("hiding")
        document.getElementById('div1').style.display = 'none';
        document.getElementById('div11').style.display = 'none';
    } else {
        if (document.querySelector('input#div0symp').checked) {
            console.log("div1");
            document.getElementById('div11').style.display = 'none';
            document.getElementById('div1').style.display = 'block';
        }
        if (document.querySelector('input#div0asymp').checked) {
            console.log("div11")
            document.getElementById('div1').style.display = 'none';
            document.getElementById('div11').style.display = 'block';
        }
    }
}

1 个答案:

答案 0 :(得分:0)

隐藏错误

for(a = 1; a <= 11; a++){
    document.getElementById('div'+ a).style.display = 'none';
}

您可以按类名查询以获取数组长度,例如el = document.getElementByClassName(“className”);然后使用el.length

如果您确实使用此方法,请确保从0到&lt; el.length 同时改变'div'+ a到'div'+(a + 1)以确保它仍然引用DIV id 1-11而不是0-10