根据多个复选框显示隐藏div

时间:2011-02-28 01:06:46

标签: jquery

我有一个最初隐藏的div(“#CME”),如果检查了所有这6个复选框,我需要显示它。

$("#CME").hide();
    (function() {
        if("#CME1") && ("#CMEQL") && ("#CBT1") && ("#CBTQL") && ("#NYM1") && ("#CMX1").is(":checked") {
            $("#CME").show();
        } else {
            $("#CME").hide();
        }
    });

这在firebug中不断出错。 THX。

1 个答案:

答案 0 :(得分:1)

您的代码存在一些问题:

1)if的语法错误。

2)if条件中缺少jQuery对象前缀(jQuery / $)。

3)即使选择中的一个元素满足根据您的要求产生错误结果的条件,jQuery的函数返回true。

试试这个:

 $("#CME").hide();
$(function() {
        $("#CME1, #CMEQL, #CBT1, #CBTQL, #NYM1, #CMX1").change(function(){
        var checkBoxes =  $("#CME1, #CMEQL, #CBT1, #CBTQL, #NYM1, #CMX1").filter(":not(:checked)");
            if(checkBoxes.length == 0){
                    $("#CME").show();
            } else {
                    $("#CME").hide();
            }
    });
});

工作示例@:http://jsfiddle.net/t5qZ7/5/