使用jQuery删除带有<span>标记的<p> </span> </p>

时间:2010-11-29 00:31:57

标签: javascript jquery html tubepress

我正在使用Tubepress插件进行Wordpress构建。此插件会在视频内容上方插入不需要的<p>。我想使用jQuery删除此标记。

以下是我要删除的代码:

<p><span id="more-76"></span></p>

跨度ID是自动生成的,每个内容的格式都不同。此代码放在以下div中。

<div class="work1alt">
   <p><span id="more-76"></span></p>
</div>

提前感谢您的帮助。

4 个答案:

答案 0 :(得分:7)

像这样:

$('span:empty:only-child').parent('p').remove();

这将非常快,但不会选择带有空格的<span>

答案 1 :(得分:1)

$('div.work1alt').find('p span:empty').parent().remove();

答案 2 :(得分:1)

第一个if条件检查我是否相信没有孩子或内容。第二个检查跨度是否包含空文本,并且只返回跨度内的文本,但不返回它的子项。

不像slak的解决方案那样优雅,可能没那么快,但非常明确。

 $('div.work1alt > p span').each(function(){
    if($.trim($(this).text()) === ""){
       $(this).parent().remove();
    }
 });
编辑:忘了把'==='“放在ifs(doh!)

答案 3 :(得分:-1)

取决于您网页上的其他内容。也许你应该像$('p').remove();

一样尝试this