如何将addClass应用于父级的父级?

时间:2012-05-10 16:47:43

标签: javascript jquery twitter-bootstrap

我正在使用:

$parent.addClass('error');

但是我想将无效的类添加到“父级的父级”中。 有没有办法写它,或者是唯一的解决方案来指定这个“祖父母”的确切ID或类?

这是我的HTML:

<div class="control-group">
    <label class="control-label" for="">Label</label>
    <div class="controls">
        <input id="1" type="text">
    </div>
</div>

<div class="control-group error">
    <label class="control-label" for="">Label</label>
    <div class="controls">
        <input id="2" type="text">
    </div>
</div>

我有很多.control-group类,所以我只想在焦点类上添加错误类,所以我不能这样做:

$(".control-group").addClass("error");

3 个答案:

答案 0 :(得分:3)

您可以使用.parent(),例如:

$(this).parent().parent().addClass('error');

但如果您使用.closest()代替:

,您将在标记方面留有一些灵活性
$(this).closest('.control-group').addClass('error');

答案 1 :(得分:1)

我很确定你可以使用$parent.parent().addClass...

我建议查看jQuery文档,因为它包含许多这样的有用函数。 http://api.jquery.com/parent/

答案 2 :(得分:0)

这样的事情: $( “选择-孙子-这里”)的父()的父()addClass( “错误”);。。。