1

我想根据下拉菜单中选择的内容显示/隐藏元素,我明白了,但我希望 div 在选择 DIVAREA2 或 DIVAREA3 时显示。说,我希望 DIV 区域 4 显示在 DiV 区域 2 和 DIV 区域 3

从这里提供了一些代码,我发现这与我想要做的很接近。这是jsfiddle:

http://jsfiddle.net/Ayeblinken/guDsm/1/

HTML

<form>
<select id="dropdown" name="dropdown">
<option value="0">Choose</option>
<option value="area1">DIV Area 1</option>
<option value="area2">DIV Area 2</option>
<option value="area3">DIV Area 3</option>
</select>
</form>
<div id="divarea1" class="box">DIV Area 1</div>
<div id="divarea2" class="box">DIV Area 2</div>
<div id="divarea3" class="box">DIV Area 3</div>
<div id="divarea4" class="box">DIV Area 4</div>

JavaScript

$(document).ready(function() {
$('.box').hide();
$('#dropdown').change(function() {
$('.box').hide();
$('#div' + $(this).val().show();
});
});
4

2 回答 2

3

如果您想要显示多个,请使用如下类:

<form>
<select id="dropdown" name="dropdown">
<option value="0">Choose</option>
<option value="area1">DIV Area 1</option>
<option value="area2">DIV Area 2</option>
<option value="area3">DIV Area 3</option>
</select>
</form>
<div class="box area1">DIV Area 1</div>
<div class="box area1">DIV Area 2</div>
<div class="box area2">DIV Area 3</div>
<div class="box area2">DIV Area 4</div>

JS

$(document).ready(function(){
 $('.box').hide();
  $('#dropdown').change(function() {
    $('.box').hide();
    $('.' + $(this).val()).show();
 });
});

这是一个 JSFIDDLE:http: //jsfiddle.net/mac1175/yEJL2/

编辑

要默认选择 area1,请将selected属性添加到区域 1 的选项中。将链式触发器调用添加到您的更改事件处理程序,例如...

JS

$(document).ready(function(){
 $('.box').hide();
  $('#dropdown').change(function() {
    $('.box').hide();
    $('.' + $(this).val()).show();
 }).trigger('change');
});

JSFIDDLE:http: //jsfiddle.net/mac1175/FKf9p/

于 2013-08-05T17:50:01.187 回答
0

if 语句呢?

$(document).ready(function(){
   $('.box').hide();
   $('#dropdown').change(function() {
      var area = $(this).val();
      $('.box').hide();
      $('#div' + area).show();
        if(area == 'area2' || area== 'area3') {
          $('#divarea4').show();
        }
   });
});
于 2013-08-05T17:53:58.627 回答