jQuery检查divs有一个类,如果没有其他类则解包

时间:2014-09-04 09:28:38

标签: javascript jquery

我有两个div's,我想要做的是遍历所有div以检查div是否有一个类jsn-bootstrap3,我也试图检查div是否有任何其他类,如果它没有,那么我想删除jsn-bootstrap3 div,以便子内容是什么。

<div class="jsn-bootstrap3">
    <div class="wrapper">
        Div one
    </div>
</div>
<div class="jsn-bootstrap3 block">
    <div class="wrapper">
        Div two
    </div>
</div>


$('div').each(function() {
    if ($(this).hasClass()) {
        console.log($(this));
        var class_name = $(this).attr('jsn-bootstrap3');
        console.log(class_name);
    }
});

jsFiddle

1 个答案:

答案 0 :(得分:4)

您可以尝试类似

的内容
$('div.jsn-bootstrap3').removeClass('jsn-bootstrap3').filter(function () {
    return $.trim(this.className.replace('jsn-bootstrap3', '')) == ''
}).contents().unwrap();

演示:Fiddle

  • 使用类选择器查找类jsn-bootstrap3的div,因为我们不想与其他人做任何事情
  • 使用filter()过滤掉任何其他类
  • 的div
  • 使用带内容()的unwrap()删除包装div