简体   繁体   English

如何删除包含搜索文本的父 div

[英]How to remove the parent div containing search text

I am trying to remove the div that contains search text.我正在尝试删除包含搜索文本的 div。 Before I had only ul and li and I used following line of code to remove that list.在我只有 ul 和 li 之前,我使用以下代码行删除该列表。

HTML HTML

<div id="found-results">
    <div class="ui list found-result"></div>
</div>

I use append to add list to above html我使用 append 将列表添加到上面的 html

$('.ui.list.found-result').filter(function() {
    return $.text([this]) === 'Tha Royal Natural Spa'; }).remove();
}

Now instead of li I have to use div.现在我必须使用 div 而不是 li。 My innerHTML looks like this:我的innerHTML 看起来像这样:

<div class="item" id="id_">
    <div class="content">
        <a class="header">Lawson 108 Mercury Tower</a>
        <div class="description">Pathum Wan Bangkok, 10330<i class="map marker icon"></i></div>
    </div>
</div>
<div class="ui divider"></div>
<div class="item" id="id_">
    <div class="content">
        <a class="header">Tha Royal Natural Spa</a>
        <div class="description">Bang Rak Bangkok, 10500<i class="map marker icon"></i></div>
    </div>
</div>
<div class="ui divider"></div>

How can I remove the parent div containing that search text?如何删除包含该搜索文本的父 div?

In your code, you have 2 items with the same ID.在您的代码中,您有 2 个具有相同 ID 的项目。 Never, ever do that.永远,永远不要那样做。 IDs are meant to be unique ID 应该是唯一的

 $('#click').on('click', function() { var elem = $('.header').filter(function() { return ($.text([this]) === 'Tha Royal Natural Spa') }).parent().parent(); if(elem.next().hasClass('divider')) elem.next().remove(); elem.remove(); });
 .divider { background: red; height: 2px; width: 100px' }
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="item" id="id_1"> <div class="content"> <a class="header">Lawson 108 Mercury Tower</a> <div class="description"> Pathum Wan Bangkok, 10330 <i class="map marker icon"></i> </div> </div> </div> <div class="ui divider"></div> <div class="item" id="id_2"> <div class="content"> <a class="header">Tha Royal Natural Spa</a> <div class="description"> Bang Rak Bangkok, 10500<i class="map marker icon"></i> </div> </div> </div> <div class="ui divider"></div> <br><br> <button id="click">Remove</button>

请试试这个。

$( "div:contains('Tha Royal Natural Spa')" ).remove()

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM