2011-06-23 170 views
0

我有一個下拉列表,其中有一個id爲add,我想顯示一個元素,當用戶選擇此選項。jQuery選擇顯示跨度元素

我的jQuery

$(document).ready(function() {  
     $('#addContactBox').hide(); 
     $('#addButton').hide(); 
      $('select option:selected#add')each.function() { 
       $('#addButton').show(); 
       $('#addButton').click(function(){ 
        $('#addContactBox').show(); 
       }); 
     }); 
    }); 

代碼不起作用可以有人幫忙,我拉我的頭髮!

+1

所以「#addButton」在選擇框中?我有點困惑,你可以發佈一些HTML? – Trey

+0

'$('select option:selected#add')each.function(){' 你在'each'之前缺少''。「',以防萬一 – Rafay

回答

1
$(document).ready(function() {  
    $('#addContactBox').hide(); 
    $('#addButton').hide(); 
     $('select option:selected#add').each(function() { 
      $('#addButton').show(); 
      $('#addButton').click(function(){ 
       $('#addContactBox').show(); 
      }); 
    }); 
}); 

對每個呼叫都有語法問題。

另外,$('#addButton').click()不需要在each之內。只是定義不管該按鈕是否可見,總是相同的行爲。

1

在下拉列表的onChange事件中使用所選選項的值。你不需要在上面放一個ID。像這樣:

$('#addContactBox').hide(); 
$('#addButton').hide(); 
$('#ddl').change(function() { 
    if ($(this).val() == 'Add') { 
     $('#addContactBox').show(); 
     $('#addButton').show(); 
    } 
}); 
+0

下面是一個工作示例:http:// jsfiddle。網/ FishBasketGordo/Y4jGD/1/ – FishBasketGordo

1
$(document).ready(function() {  
     $('#addContactBox').hide(); 
     $('#addButton').hide(); 
     $('select').change(function() { 
      if($('option:selected#add').length>0){ 
       $('#addButton').show(); 
       $('#addButton').click(function(){ 
        $('#addContactBox').show(); 
       }); 
      } 
     }); 
}); 

如果我沒有記錯的話你想,當選擇了該選項...也許這樣顯示?

+0

真棒謝謝! –