单击复选框时切换效果

时间:2014-01-19 11:45:33

标签: jquery

我有这个代码

jQuery(document).ready(function() {

    var cb = $('.customstyle').attr('checked');

    if (cb == "checked"){
        $('.cbox').show();
    }else{
        $('.cbox').hide();
    }

    $(".customstyle").click(function(){
    $('.cbox').toggle('fast');
    });

});

从上面的代码中,首先它获得“.customstyle”复选框的“已检查”属性,然后如果变量cb等于“已检查”,那么如果没有则显示“.cbox”,否则它将是隐藏,如果单击“.customstyle”复选框,则切换“.cbox”。

以上代码应该像我试图做的那样工作,但事实并非如此,我也试图提醒cb,我得到“未定义”,这是什么错误?这里的任何人都可以说出问题,错误或缺失的原因吗?

我对任何建议,建议和想法持开放态度。提前谢谢!

2 个答案:

答案 0 :(得分:2)

你可以使用:

   $(".customstyle").click(function(){
       $('.cbox').toggle(this.checked);
   });

Demo

要检查输入是否为checked,您需要使用.prop(),并且需要将其与== true进行比较,或使用.is(':checked')

答案 1 :(得分:0)

试试这个

$(".customstyle").change(function () {
    if ($(this).prop('checked')) {
        $('.cbox').show('fast');
    } else {
        $('.cbox').hide('fast');
    }
}).trigger('change');

DEMO