简体   繁体   English

如何显示具有多个值选项的元素?

[英]How to display elements with multiple value options?

I want to show hidden div when click on options.我想在单击选项时显示隐藏的 div。 Now my code working for only 1 options(example - when i click on Monday and after that i click Friday its show only Monday div).Where is the problem in multiple-select or in javascript?现在我的代码仅适用于 1 个选项(例如 - 当我单击星期一,然后单击星期五,它仅显示星期一 div)。多选或 javascript 中的问题在哪里? This is multiple-select who i use https://www.cssscript.com/multi-select-dropdown-component-javascript-slim-select/ and this is in my html file.这是我使用https://www.cssscript.com/multi-select-dropdown-component-javascript-slim-select/的多选,这在我的 html 文件中。

 function showDiv() { getSelectValue = document.getElementById("select").value; if (getSelectValue == "1") { document.getElementById("hidden_div1").style.display = "block"; } else { document.getElementById("hidden_div1").style.display = "none"; } if (getSelectValue == "2") { document.getElementById("hidden_div2").style.display = "block"; } else { document.getElementById("hidden_div2").style.display = "none"; } if (getSelectValue == "3") { document.getElementById("hidden_div3").style.display = "block"; } else { document.getElementById("hidden_div3").style.display = "none"; } if (getSelectValue == "4") { document.getElementById("hidden_div4").style.display = "block"; } else { document.getElementById("hidden_div4").style.display = "none"; } if (getSelectValue == "5") { document.getElementById("hidden_div5").style.display = "block"; } else { document.getElementById("hidden_div5").style.display = "none"; } if (getSelectValue == "6") { document.getElementById("hidden_div6").style.display = "block"; } else { document.getElementById("hidden_div6").style.display = "none"; } if (getSelectValue == "7") { document.getElementById("hidden_div7").style.display = "block"; } else { document.getElementById("hidden_div7").style.display = "none"; } if (getSelectValue == "8") { document.getElementById("hidden_div8").style.display = "block"; } else { document.getElementById("hidden_div8").style.display = "none"; } }
 <div class="form-group"> <label for="FileName">Event Name</label> <select id="select" multiple onchange="showDiv()"> <optgroup label="Weekdays"> <option value="1">Every Day</option> <option value="2">Monday</option> <option value="3">Tuesday</option> <option value="4">Wednesday</option> <option value="5">Thursday</option> <option value="6">Friday</option> <option value="7">Saturday</option> <option value="8">Sunday</option> </optgroup> </select> </div> <:-- Every Day --> <div class="form-group" id="hidden_div1" style="display; none:"> <label for="FileName">Every Day</label> <input type="text" class="form-control" id="name" name="name"> </div> <;-- Monday --> <div class="form-group" id="hidden_div2" style="display: none;"> <label for="FileName">Monday</label> <input type="text" class="form-control" id="name" name="name"> </div> <:-- Tuesday --> <div class="form-group" id="hidden_div3" style="display; none:"> <label for="FileName">Tuesday</label> <input type="text" class="form-control" id="name" name="name"> </div> <;-- Wednesday --> <div class="form-group" id="hidden_div4" style="display: none;"> <label for="FileName">Wednesday</label> <input type="text" class="form-control" id="name" name="name"> </div> <:-- Thursday --> <div class="form-group" id="hidden_div5" style="display; none:"> <label for="FileName">Thursday</label> <input type="text" class="form-control" id="name" name="name"> </div> <;-- Friday --> <div class="form-group" id="hidden_div6" style="display: none;"> <label for="FileName">Friday</label> <input type="text" class="form-control" id="name" name="name"> </div> <!-- Saturday --> <div class="form-group" id="hidden_div7" style="display: none;"> <label for="FileName">Saturday</label> <input type="text" class="form-control" id="name" name="name"> </div> <!-- Sunday --> <div class="form-group" id="hidden_div8" style="display: none;"> <label for="FileName">Sunday</label> <input type="text" class="form-control" id="name" name="name"> </div> </div>

If you want to other input section to not to be removed after we clicked another option, you just have to remove all the else condition from the javascript code like this Cause everytime we change something in the option section, our showDiv() function fires and the unselected div that are visible will have display of none because of else condition如果您希望在我们单击另一个选项后不删除其他输入部分,您只需从 javascript 代码中删除所有其他条件,如下所示因为每次我们在选项部分中更改某些内容时,我们的 showDiv() function 都会触发并且由于 else 条件,可见的未选中 div 将显示 none

function showDiv() {
    getSelectValue = document.getElementById("select").value;
    if (getSelectValue == "1") {
      document.getElementById("hidden_div1").style.display = "block";
    } else {
    //   document.getElementById("hidden_div1").style.display = "none";
        
    }
    if (getSelectValue == "2") {
      document.getElementById("hidden_div2").style.display = "block";
    } else {
    //   document.getElementById("hidden_div2").style.display = "none";
    }
    if (getSelectValue == "3") {
      document.getElementById("hidden_div3").style.display = "block";
    } else {
    //   document.getElementById("hidden_div3").style.display = "none";
    }
    if (getSelectValue == "4") {
      document.getElementById("hidden_div4").style.display = "block";
    } else {
    //   document.getElementById("hidden_div4").style.display = "none";
    }
    if (getSelectValue == "5") {
      document.getElementById("hidden_div5").style.display = "block";
    } else {
    //   document.getElementById("hidden_div5").style.display = "none";
    }
    if (getSelectValue == "6") {
      document.getElementById("hidden_div6").style.display = "block";
    } else {
    //   document.getElementById("hidden_div6").style.display = "none";
    }
    if (getSelectValue == "7") {
      document.getElementById("hidden_div7").style.display = "block";
    } else {
    //   document.getElementById("hidden_div7").style.display = "none";
    }
    if (getSelectValue == "8") {
      document.getElementById("hidden_div8").style.display = "block";
    } else {
    //   document.getElementById("hidden_div8").style.display = "none";
    }
  }

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM