JQuery选择父节点并更改其类名

时间:2013-12-09 07:20:09

标签: javascript jquery

<div class="abcdef">ABC
<div class="B">bcs</div>
<div id="A" class="C"></div>
<select id="D" style="width:200px;">
    <option value="abc">abc</option>
    <option value="123">123</option>
</select>
</div>

我想更改div class =“abcdef”的类,因为在我的情况下,我将有很多div,类以“abc ..”开头。

但我在这里唯一一致的id是id =“A”,所以我想利用它。

所以,我的jquery应该,

  1. 选择id =“A”
  2. 找到以“abc”
  3. 开头的类的父节点
  4. 更改班级名称
  5. *编辑 我没有太多想法选择.parentNode以外的父节点,这是主要的问题,如果我可以选择父节点,我想我可以整理更改类名称

3 个答案:

答案 0 :(得分:1)

您可以找到A元素然后使用.closest()以及属性start with selector来查找带有类abc*的div元素,然后删除该类并添加新类

$('#A').closest('div[class^=abc]').removeClass().addClass('newclass')
$('#A').closest('div[class^=abc]').attr('class', 'newclass')

答案 1 :(得分:0)

**如果“#A”是“.abc ..”的孩子

 $('#A').parents('div[class^=abc]').removeClass().addClass('NewClass');

如果是.abc ..,则在#A

之前
 $('#A').prev('div[class^=abc]').removeClass().addClass('NewClass');

答案 2 :(得分:0)

如果在DOM中,div是#A.

的父级
$("#A").parent().removeClass().addClass('newclass');