0

チェックボックスがチェックされているときにいくつかのクラスを要素に追加する以下のjQuery関数がありますが、これはすべて良いことです。しかし、チェックボックスがオフになっている場合は、これらの同じクラスを要素から削除したいと考えています。.removeClass を使用すると推測していますが、どこに追加すればよいかわかりません。
ありがとう

function countDouble() {      
    var d = $("input.double:checked").length;
    var s = $("input.single:checked").length;

    if (d === 2) {
   $(".twoday input:disabled").addClass("disabled");
       $(".twoday input:disabled + label").addClass("disabled");
    };
    if (s === 1) {
   $(".oneday input:disabled").addClass("disabled");
       $(".oneday input:disabled + label").addClass("disabled");
    };
};

jQuery(document).ready(function(){              
    countDouble();
    $(":checkbox").click(countDouble);  
});
4

3 に答える 3

0

動作するコードのバリエーションを次に示します。必要に応じて、条件ステートメント内に呼び出しを追加できます。

http://jsfiddle.net/UefHa/

 function countDouble() {      
    var d = $("input.double").is(':checked');
    var s = $("input.single").is(':checked');

    if (d === true) {
       $(".twoday input").prop("disabled",true).addClass("disabled");
    } else {
       $(".twoday input").prop("disabled",false).removeClass("disabled");
    }

    if (s === true) {
       $(".oneday input").prop("disabled",true).addClass("disabled");
    } else {
       $(".oneday input").prop("disabled",false).removeClass("disabled");
    }
}

jQuery(document).ready(function(){              
    $('input[type=checkbox]').change( function() {
        countDouble();
    });
});
于 2013-01-24T06:09:58.573 に答える
0

「無効」はクラスというよりは属性です。

ここで説明: jQuery - チェックボックスの有効化/無効化

幸運を!

于 2013-01-24T05:57:12.590 に答える
0

以下のコードを参照してください。

$('#myform :checkbox').click(function() {
    var $this = $(this);
    // $this will contain a reference to the checkbox   
    if ($this.is(':checked')) {
        // the checkbox was checked, call the function to addClass 
    } else {
        // the checkbox was unchecked, call the function to removeClass
    }
});

更新:.click vsを明確に.changeすると、それを説明する答えがここにあります:

チェックボックスは、たまたま変更とクリックが交換可能な特殊なケースです。これは、クリックをトリガーせずに変更イベントを発生させることができないためです。

ソース

于 2013-01-24T06:01:08.463 に答える