javascript - 仅当父级没有其他 div.class 时,才在子级中添加 div.class

标签 javascript jquery html

我有一个像这样的html代码:

<div class="someclass">
    <div class="childclass"></div>
    <div class="checkclass"></div>
</div>
<div class="someclass">
    <div class="childclass"></div>
</div>
<div class="someclass">
    <div class="childclass"></div>
    <div class="checkclass"></div>
</div>
<div class="someclass">
    <div class="childclass"></div>
    <div class="checkclass"></div>
</div>
<div class="someclass">
    <div class="childclass"></div>
</div>

我只需要在那些没有“checkclass”的div上添加一个div,所以它会像这样:

<div class="someclass">
    <div class="childclass"></div>
    <div class="checkclass"></div>
</div>
<div class="someclass">
    <div class="childclass"></div>
    <div class="newclass"></div>
</div>
<div class="someclass">
    <div class="childclass"></div>
    <div class="checkclass"></div>
</div>
<div class="someclass">
    <div class="childclass"></div>
    <div class="checkclass"></div>
</div>
<div class="someclass">
    <div class="childclass"></div>
    <div class="newclass"></div>
</div>

我尝试使用 jquery 类似:

$('.someclase:not(children(hasClass(checkclass))').append('<div class="newclass"></div>');
$('.someclass:not(:children(.checkclass))').append('<div class="newclass"></div>');
$('.someclass > :not(.checkclass)').append('<div class="newclass"></div>');

但仍然没有任何想法,有什么想法吗?

最佳答案

尝试如下:

$(".someclass").each(function(){
    if(!$(this).find(".checkclass").length)
    {
        $(this).append("<div class='checkclass' />");
    }
});

您尝试获取所有不具有 checkclass 类的元素。不是没有带有 checkclass 的子级的 DIV。

关于javascript - 仅当父级没有其他 div.class 时,才在子级中添加 div.class,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8224759/

相关文章:

javascript - 在焦点上显示数据列表的所有选项

jQuery'悬停导致div闪烁

javascript - 具有固定列的子行(显示额外/详细信息)

javascript - 在另一个内部动态创建 div

html - 将 javascript 日历控件带到前面?

javascript - 在 Jquery 追加后立即呈现 html

javascript - jqxNumberInput 强制用户在数值前保留 (-) 负号

javascript - jquery 工具提示在 ie 10 中不起作用

css - 如何根据输入文本字段内的图像对齐文本?

javascript - 复活节彩蛋 - 字母间距