Jquery 如何查找具有特定值的子元素并将其删除';s的直接父节点?

Jquery 如何查找具有特定值的子元素并将其删除';s的直接父节点?,jquery,html,Jquery,Html,我需要找到一个元素优先级:。如果存在,我需要删除它的父元素,即 我知道在中还存在其他元素。e、 g类型:。但这不应该被触动 <li class="item"> <div class="wrap"> <strong class="name">Type:</strong> <span id="type-val" class="value"> <img alt="Task

我需要找到一个元素
优先级:
。如果存在,我需要删除它的父元素,即
我知道在
  • 中还存在其他元素。e、 g
    类型:
    。但这不应该被触动

    <li class="item">
        <div class="wrap">
            <strong class="name">Type:</strong>
            <span id="type-val" class="value">
                 <img alt="Task" height="16" src="task.png" title="" width="16"> Task
            </span>
        </div>
    </li>
    <li class="item">
            <div class="wrap">
                <strong class="name">Priority:</strong>
                <span id="priority-val" class="value editable-field inactive" title="Click to edit">
                       <img alt="2. Critical" height="16" src="/critical.png" title="2"> 2. Critical
                <span class="overlay-icon aui-icon aui-icon-small aui-iconfont-edit"></span></span>
            </div>
    </li>
    
    使用
    filter()
    最近('li')
    删除父
    li

    $("li.item strong.name").filter(function(){
        return $(this).text().indexOf('Priority:') > -1;
    }).closest('li').remove();
      //to remove <div class="wrap"> use parent() instead of closest(..)
    
    你可以试着和你的朋友结合。例如:

    $('li.item .wrap:has(strong.name:contains("Priority:"))').remove();
    
    请参见

    是否应删除高优先级的父项:
    父级是否始终具有类
    .wrap
    $("li.item strong.name:contains(Priority:)").closest('li').remove();
    
       $('.name').each(function(){
         $val = $(this).text();
    
         if ($val == "Priority:") {
           $(this).parent().remove();
         };
      });
    
    $('li.item .wrap:has(strong.name:contains("Priority:"))').remove();