if:选中将class添加到此

时间:2012-11-15 16:15:50

标签: jquery

我有一个小问题。我想检查是否选中了复选框,如果选中它,我想向他的第一个兄弟添加一个类。 HTML:

    <input class="box" type="checkbox">
    <p class="red">Red text </p>

    <input class="box" checked type="checkbox">
    <p class="red">I want this text in blue </p>

JS:

    if(jQuery(".box").is(":checked")) {
    jQuery(this).next().attr('class', 'blue');                              
}

此处示例:http://jsfiddle.net/LVEqn/

提前致谢!

3 个答案:

答案 0 :(得分:6)

如果要将“蓝色”类添加到复选框后面的所有元素,请执行以下操作:

$(".box:checked").next().addClass('blue');

如果要替换现有的类,请执行

$(".box:checked").next().attr('class', 'blue');

如果您希望这是动态的,那么在用户选中或取消选中时会发生变化,请执行

$(".box").change(function(){
    $(this).next().attr('class', $(this).is(':checked') ? 'blue' : 'red');
});

DEMONSTRATION

答案 1 :(得分:2)

试试这个:

jQuery(".box:checked").each(function(){
    jQuery(this).next().attr('class', 'blue');
})  

演示:http://jsfiddle.net/LVEqn/2/

答案 2 :(得分:1)

的jQuery

$(".box:checked").next().addClass("blue");

CSS

.blue {color: blue !important;}