首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用选择选项隐藏和显示表单的JavaScript

使用选择选项隐藏和显示表单的JavaScript
EN

Stack Overflow用户
提问于 2020-08-26 15:31:13
回答 1查看 68关注 0票数 0

我在select option中有formOneformTwo。JavaScript代码来隐藏这两个表单,如果我选择formOne来显示formOne,如果我选择formTwo来显示formOneformTwo

代码语言:javascript
复制
function changeOptions(selectEl) {
  let selectedValue = selectEl.options[selectEl.selectedIndex].value;
  let subForms = document.getElementsByClassName('OLevelResult')
  for (let i = 0; i < subForms.length; i += 1) {
    if (selectedValue === subForms[i].name) {
      subForms[i].setAttribute('style', 'display:block')
    } else {
      subForms[i].setAttribute('style', 'display:none')
    }
  }
}
代码语言:javascript
复制
<select onchange="changeOptions(this)">
  <option value="form_1">1</option>
  <option value="form_2">2</option>
</select>

<form class="OLevelResult" name="form_1" id="form_1" style="display:none">
  THIS IS FORM 1
  <!---- THIS IS FORM 1---->
</form>

<form class="OLevelResult" name="form_2" id="form_2" style="display:none">
  THIS IS FORM 2
  <!---- THIS IS FORM 2---->
</form>

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-26 17:34:48

代码语言:javascript
复制
function changeOptions(selectEl) {
  let subForms = document.getElementsByClassName('OLevelResult')
  for (let i = 0; i < subForms.length; i += 1) {
    if (selectEl === subForms[i].name) {
      for(let j=i; j>-1 ;j--) {
        subForms[j].classList.add("active");
      }
    } else {
      subForms[i].classList.remove("active");
    }
  }
}
代码语言:javascript
复制
.OLevelResult {
display: none;
}
.OLevelResult.active {
display: block;
}
代码语言:javascript
复制
<select onchange="changeOptions(this.value)">
  <option value="">select</option>
  <option value="form_1">1</option>
  <option value="form_2">2</option>
  <option value="form_3">3</option>
  <option value="form_4">4</option>
</select>

<form class="OLevelResult" name="form_1" id="form_1">
  THIS IS FORM 1
  <!---- THIS IS FORM 1---->
</form>

<form class="OLevelResult" name="form_2" id="form_2">
  THIS IS FORM 2
  <!---- THIS IS FORM 2---->
</form>

<form class="OLevelResult" name="form_3" id="form_3">
  THIS IS FORM 3
  <!---- THIS IS FORM 1---->
</form>

<form class="OLevelResult" name="form_4" id="form_4">
  THIS IS FORM 4
  <!---- THIS IS FORM 2---->
</form>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63592628

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档