1

チェックボックスを含む div の背景色を変更しようとしています。参照用にこれhttp://jsfiddle.net/B7P65/を作成しました。親divを「ハイライト」divに置き換えようとしているので、トグルdivが機能すると思いました。チェックボックスの選択が解除されたら、背景色を通常に戻します (または「ハイライト」div を削除します)。どんな助けでも大歓迎です。

4

4 に答える 4

3

parent()メソッドの使い方が間違っています。toggleClass()メソッド内からメソッドを抽出し、parent()個別に配置したい。

次の更新を試してください。

$(this).parent().toggleClass("highlight");

完了:

$("input:checkbox").click(function() {
    var actualTime = "";
    $(this).parent().toggleClass("highlight");
});

デモ: http://jsfiddle.net/Hmq65/

于 2012-07-10T23:26:38.083 に答える
2

ワーキングデモ http://jsfiddle.net/q3NN2/ または別の方法 http://jsfiddle.net/KUhFp/

.is(':checked')2 番目のデモでは、is checked ロジックを使用する場合に、特別なものを使用する方法を示します。:)

コード

$("input:checkbox").click(function() {
    var actualTime = "";
    $(this).parent().toggleClass("highlight");
});

コード

$("input:checkbox").click(function() {
    var actualTime = "";
    if ($(this).is(':checked')) {
        $(this).parent().addClass("highlight");

    } else {
        $(this).parent().removeClass("highlight");
    }
});
于 2012-07-10T23:27:57.980 に答える
1

これを試してください: http://jsfiddle.net/B7P65/1/

于 2012-07-10T23:27:39.987 に答える
0

このコードは、チェックされている場合は強調表示し、チェックされていない場合はクラスを削除します。

JavaScript:

    $('#your table id tr')
    .filter(':has(:checkbox:checked)')
    .addClass('highlight')
    .end()
    .click(function(event) {
        $(this).toggleClass('highlight');
    if (event.target.type !== 'checkbox') {
        $(':checkbox', this).attr('checked', function() {
        return !this.checked;
    });
  }
});

CSS:

.highlight{
    background-color:green;
}
于 2013-02-22T05:43:14.530 に答える