我在描述内容的中间有很多 <p> &nbsp </p> 标签。我想查找并删除仅包含 &nbsp 的标签。描述容器有一个类名 desc_container

这是容器的示例,

<div class="desc_container">
    <p> Some contents! <p>
    <p> &nbsp </p>
    <p> Again some contents! <p>
    <p> &nbsp </p>
</div>

<script>
    jQuery(document).ready(function(){
      // This will give me all the <p> tags
      $('.desc_container').find('p');

      // This is what i want
      $('.desc_container').find('p').containsOnly('&nbsp');
    }
</script>

感谢帮助。谢谢!

最佳答案

您需要为每个 $(this).html().trim() === '&nbsp;' 元素检查循环内的 <p> 并删除 <p> 元素。您可以在以下示例中使用浏览器的 inspect element 选项进行进一步验证。

$(document).ready(function(){
  $('.desc_container p').each(function(){
    if($(this).html().trim() === '&nbsp;'){
      $(this).remove();
    }
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="desc_container">
 <p> This is a example </p> <p> &nbsp </p> for some content here <p> test data</p><p> &nbsp </p>
</div>

关于javascript - 查找并删除具有特定内容的元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50404822/

10-11 20:06