根据选定的单选按钮和页面加载隐藏隐藏选项

时间:2019-02-05 15:33:56

标签: javascript jquery dynamic-arrays

我有一个带有单选按钮和下拉列表的表单。

如果用户选择“女孩”,则我只想显示girlsGames变量中指定的卡通和国际象棋。

如果用户选择男孩,我想显示boysGames变量的下拉选项。

这是我的代码:

<form action="">
    <label for="boys"><input type="radio" id="boys" name="gender" value="boys">Boys</label>
    <label for="girls"><input type="radio" id="girls" name="gender" value="girls">Girls</label>
    <select name="games" id="">
    <option value="">select games</option>
    <option value="caroms">Caroms</option>
    <option value="chess">Chess</option>
    <option value="football">Football</option>
    <option value="rugby">Rugby</option>
    </select>
  </form>
    <script>
    var girlsGames = ['caroms', 'chess'];
            $('input:radio').change(function(event) {

          });
    </script>

1 个答案:

答案 0 :(得分:1)

这是许多方法之一,基于将类添加到特定选项并隐藏/显示所有选项:

var girlsGames = ['caroms', 'chess'];
            $('input:radio').change(function(event) {
             
              if(event.target.value == 'girls') {
                 $('option').hide();
                 $('.girls').show();
              } else if (event.target.value == 'boys'){
                 $('option').show();
              }
              
          });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form action="">
    <label for="boys"><input type="radio" id="boys" name="gender" value="boys">Boys</label>
    <label for="girls"><input type="radio" id="girls" name="gender" value="girls">Girls</label>
    <select name="games" id="">
    <option value="" class="girls">select games</option>
    <option value="caroms" class="girls">Caroms</option>
    <option value="chess" class="girls">Chess</option>
    <option value="football">Football</option>
    <option value="rugby">Rugby</option>
    </select>
  </form>

相关问题