1

我再次希望您的共同专业知识将有助于找到一个优雅的解决方案。我正在自动化报告以最大限度地减少人为输入(和错误)。报告的基础是一个网页,其中包含以下代码:

</p></li>

 <li>ARTICLE 1<br />
    <p>    
       <div class="list">
           Nothing found. 
       </div>
    </p>
 </li>
 <li>
    <p>ARTICLE 2</p>    
    <div class="list">
    <h4 class="sub-heading">ITEMS</h4>
     <ul>
        <li class="item">
           <span class="title"> 

p 元素是我创建的,而 div class="list" 是我无法触及的插件的输出。基本上,该插件使用特定查询扫描数据库,并生成为给定查询找到的项目列表或“未找到”字符串。然后操作员将其复制粘贴到某个地方并删除“ITEMS”标题和“Nothing found”。使报告更具可读性。到目前为止,我设法做的是使用这些 jquery:

$(".list .sub-heading").addClass("hidden");
$(".list:contains('Nothing found.')").addClass("hidden");

我想要实现的是添加一个 jquery,它不仅删除包含“Nothing found.”的 div,还删除前面的元素,即上面示例中包含“ARTICLE 1”的行。如果您能提出合理的解决方案,请提供帮助。提前致谢。

4

2 回答 2

1

您可以closest方法并隐藏li隐藏所有内容的元素:

$(".list:contains('Nothing found.')").closest('li').addClass("hidden");
于 2012-11-01T13:54:04.460 回答
0

你应该能够做到这一点:

$(".list:contains('Nothing found.')").parent('li').addClass("hidden");
于 2012-11-01T13:56:18.780 回答