2014-11-05 65 views
1

當我選擇'美國'時,我想讓我的statecat下拉菜單出現。爲什麼現在不這樣做?使用2個選擇菜單顯示/隱藏問題

非常感謝您的幫助。

http://jsfiddle.net/3esurLwt/

HTML

<select name="cat" id="cat"> 
    <option value="uk">uk</option> 
    <option value="us">us</option> 
</select> 

<select name="statecat" id="statecat"> 
    <option value="me">maine</option> 
    <option value="ge">georgia</option> 
</select> 

的Javascript

jQuery('#cat').change(function(){ 
if(jQuery('#cat').val()=="us") 
    jQuery('form#stateSwitch').show(); 
else { 
    jQuery('form#stateSwitch').hide(); 
}) 

if(jQuery('#cat').val()=="0") 
jQuery('form#languageSwitch').siblings('div').show(); 
    else{ 
    jQuery('form').siblings('div').hide(); 
    jQuery('.'+jQuery('#cat').val()).show(); 

    } 
}); 
+1

你一個閉合paranthesis太多在你的JavaScript的第6行(至少在第二if/else語句是要考慮的一部分你的處理函數,否則你在第6行缺少一個大括號,最後一行是過時的) – Markai 2014-11-05 16:36:37

回答

1

你可以簡單的使用切換:

jQuery('#cat').change(function() { 
 
    $("#statecat").toggle($(this).val() == "us"); 
 
});
#statecat { 
 
    display: none 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> 
 
<select name="cat" id="cat"> 
 
    <option value="uk">uk</option> 
 
    <option value="us">us</option> 
 
</select> 
 
<select name="statecat" id="statecat"> 
 
    <option value="me">maine</option> 
 
    <option value="ge">georgia</option> 
 
</select>

參考

.toggle()