Javascript 如何使用jquery删除元素类hasnotimg标记?

Javascript 如何使用jquery删除元素类hasnotimg标记?,javascript,jquery,html,removeclass,Javascript,Jquery,Html,Removeclass,如果在所有带有.box1的div中未找到标记,我想删除类描述: <ul class="radio accomodation-radio"> <li class="homeing-outer0 homeing-outer clearfix active" style="display: block;"> <div class="box1 clearfix"> <div class="description">

如果在所有带有
.box1
的div中未找到
标记,我想删除类描述:

<ul class="radio accomodation-radio">
   <li class="homeing-outer0 homeing-outer clearfix active" style="display: block;">
       <div class="box1 clearfix">
            <div class="description">
                 <p>Preis pro Person, nur Mehrbettzimmerbelegung. Sie teilen sich Hotelzimmer im Großraum Reykjavik und 2-4-Bett-Zimmer mit bezogenen Betten während der Tour.</p>
            </div>
       </div>
</li>....

您可以使用和选择器的组合

$(“.acomodation radio.box1:not(:has(img))div”).removeClass(“description”)
.box1.说明{颜色:绿色}

  • Preis专业人士nur Mehrbettzimmerbelegung。你是雷克雅未克格罗拉姆齐默酒店和2-4-Bett-Zimmer酒店的客人

您的
。each()
试图在不存在的元素上运行-您需要传递
。在循环中查找
,如下所示:

$(".accomodation-radio").each(function() {
    if ($(this).find(".box1 img").length === 0)
    { 
        $(this).find("div").removeClass("description"); 
    }
});

试试这个:

$(document).ready(function(){

    $(".accomodation-radio .box1").each(function(){

        if($(this).find("img").length === 0)

            $(this).find(".description").removeClass("description");

    })

})
您可能需要:
$(this.find(“.description”).removeClass(“.description”)虽然最终结果在这种情况下是相同的。
$(".accomodation-radio").each(function() {
    if ($(this).find(".box1 img").length === 0)
    { 
        $(this).find("div").removeClass("description"); 
    }
});
$(document).ready(function(){

    $(".accomodation-radio .box1").each(function(){

        if($(this).find("img").length === 0)

            $(this).find(".description").removeClass("description");

    })

})