2012-03-01 68 views
0

我有一個選擇字段和一個textarea。我試圖隱藏/顯示textarea的在選擇類型的功能,我做:如何顯示/隱藏基於jQuery中選擇的textarea?

<select id="select" name="management"> 
    <option value="0" selected="">Select One</option> 
    <option value="1">Yes</option> 
    <option value="0">No</option> 
</select> 
<textarea id="textarea" name="searching_gig_des" wrap="VIRTUAL" cols="50" rows="5"></textarea> 
​ 
var textarea = $('textarea');. 
var select = $('#select').val(); 

textarea.hide(); 

if (select == '1'){ 
    textarea.show(); 
} 
if (select == '0'){ 
    textarea.hide(); 
} 
​ 

jsfiddle

什麼想法?

感謝

回答

2

你有幾個語法錯誤,再加上你沒有綁定changeeventselect

$('#select').change(function(){ 

     var textarea = $('textarea'); 
     var select = $(this).val(); 

     textarea.hide(); 

     if (select == '1'){ 
      textarea.show(); 
     } 
     if (select == '0'){ 
      textarea.hide(); 
     } 
});​ 

jsfiddle

1
$('#select').change(function(){ 
    var value = $(this).val(); 
    var textarea = $('textarea'); 

    if (value == '1'){ 
     textarea.show(); 
    } 
    if (value == '0'){ 
     textarea.hide(); 
    } 

}); 
1

取下var textarea = $('textarea');..,你是好去。

順便說一句,我認爲你正在嘗試show/hide textarea基於頁面的下拉值onload

你需要的,如果您想根據下拉菜單選擇顯示/隱藏textarea的改變處理類似下面,

var $select = $('#select'); 

$select.change(function() { 
    var select = $(this).val(); 
    if (select == '1') { 
     textarea.show(); 
    } 
    if (select == '0') { 
     textarea.hide(); 
    } 
}); 
+0

downvoter - 請解釋爲什麼這倒投票? – 2012-03-01 22:48:07

1

首先從後取出期間(.)第一個分號爲var的行。然後包裹ifchange()事件處理程序,使第二ifelse if *:

var textarea = $('#textarea'); 
var select = $('#select').val(); 

textarea.hide(); 

$(select).change(
    function(){ 
     if (select == 1){ 
      textarea.show(); 
     } 
     else if (select == 0){ 
      textarea.hide(); 
     } 
    }); 

JS Fiddle update


  • 這不,嚴格把關,必要的。但它對我來說確實更有意義,因爲這兩個條件是相關的。另一方面,它也可能只是一個else(而不是else if,因爲只有兩個選項)。
1

嘗試:

var textarea = $('textarea'); 
$('#select').change(function() { 
    if ($(".yes:selected").val() == 1) { 
     textarea.show(); 
    } 
    else { 
     textarea.hide(); 
    } 
});​ 

http://jsfiddle.net/uMTmm/1/

相關問題