使用javascript选择另一个选项后,循环隐藏选项不起作用

Looping hide option not working after select another option with javascript

本文关键字:选项 循环 隐藏 不起作用 选择 另一个 使用 javascript      更新时间:2023-09-26

我有一个带有循环的-/+50选择选项。不工作隐藏选项后选择另一个与javascript?

只工作4选择选项。我已经更改了值,但它仍然不起作用。

Javascript代码:

<script type="text/javascript">
function check() {
  d=document;
  myArray = [];
  for (h=1;h<4;h++) {
    myArray[h] = d.getElementById('drop'+(h+1)).value;
  }
  for (a=1;a<4;a++) {
    for (b=1;b<4;b++) {
    d.getElementById('drop'+(a+1)).options[b].style.display = "block";
      for (c=1;c<4;c++) {
        if(d.getElementById('drop'+(a+1)).options[b].value == myArray[c]) {
          d.getElementById('drop'+(a+1)).options[b].style.display = "none";
        }
      }
    }
  }
}
</script>

循环选择:

<select id="drop1" name="drop" onchange="check();"> 
  <option value="0"></option>
  <option value="3">One</option>
  <option value="5">Two</option>
  <option value="1">Three</option>
</select>
--------- looping select id="drop50" -------------

提前感谢:)

更改javascript代码:)

<script type="text/javascript">
function check(element)
{
  d=document;
  drops = d.getElementsByName('drop').length;
  opts = 99;
  for (i=1;i<drops+1;i++)
  {
    if (element.id != 'drop'+i && element.value != '0')
    {
      for (z=0;z<opts;z++)
      {
        if (d.getElementById('drop'+i).options[z].value == element.value)
        {
          d.getElementById('drop'+i).options[z] = null;
          break;
        }
      }
    }
  }
}
</script>