以联系方式隐藏元素

时间:2011-04-18 20:27:29

标签: jquery select hide onchange if-statement

关于联系表格中隐藏的div ...

“select2”和“select3”中的else JavaScript编写不正确,我希望有人可以指出我正确的方向。

使用jQuery,我有类似的东西:

<script type="text/javascript">
$(document).ready(function(){
$("#select1").change(function(){
    if ($(this).val() == "retouching" ) {
        $("#hide1").slideDown("fast");
    } else {
        $("#hide1").slideUp("fast");  
    } 
});

$("#select2").change(function(){
    if ($(this).val() == "fashion" || $(this).val() == "beauty" || $(this).val() == "product" || $(this).val() == "architectural") {
        $("#hide2").slideDown("fast");
    } else {
        $("#hide1").slideUp("fast") || $("#hide2").slideUp("fast"); 
    }
});
$("#select1").change(function() {
    if ($(this).val() == "photography" ) {
        $("#hide3").slideDown("fast");
    } else {
        $("#hide3").slideUp("fast");
    } 
});

$("#select3").change(function(){
    if ($(this).val() == "fashion" || $(this).val() == "beauty" || $(this).val() == "product") {

        $("#hide4").slideDown("fast");
    } else {
        $("#hide4").slideUp("fast") || $("#hide3").slideUp("fast");
    }
});
$("#select1").change(function(){
    if ($(this).val() == "studio" ) {
        $("#hide5").slideDown("fast");
    } else {
        $("#hide5").slideUp("fast");
    }    
});
});
</script>

由于select2和select3中有两个“隐藏”,如果用户决定从select1中选择其他东西,我就无法隐藏它们。

2 个答案:

答案 0 :(得分:0)

试试这个:

$("#hide4").slideUp("fast");
$("#hide3").slideUp("fast");  

而不是

$("#hide4").slideUp("fast") || $("#hide3").slideUp("fast");  

答案 1 :(得分:0)

这应该做什么?

$("#hide1").slideUp("fast") || $("#hide2").slideUp("fast"); 

它(和类似的代码)应该是:

$("#hide1").slideUp("fast");
$("#hide2").slideUp("fast");