jQuery从<ul>,<ol> </ol> </ul>中删除<br/>

时间:2013-05-23 14:11:44

标签: jquery

我有一个PHP生成的代码,它有不需要的br标签。 如何在<br>打开后立即显示<ul>,即:<li>不在<br>内 如何在</ul>

标记结束后立即删除<ul> <br> <li> ....</li> <li> ....</li> <li> ....</li> </ul> <br>
{{1}}

5 个答案:

答案 0 :(得分:6)

<ul>标识为<{1}}的唯一合法子项:

<li>

或者如果您想要更具体,并且只解决此特定错误:

$('ul').children(':not(li)').remove();

要删除跟随 $('ul > br').remove(); 的{​​{1}},您可以使用&#34;前面的&#34; CSS选择器:

<br>

请注意,后者仅指&#34;开放&#34; <ul>代码,但整个$('ul + br').remove(); 元素包括其关闭<ul>代码。

答案 1 :(得分:4)

要在<br />关闭后删除<ul>,您可以使用此功能:

$("ul").next("br").remove();

要删除<br />中的<ul>,您可以使用此功能:

$('ul').children(':not(li)').remove();

答案 2 :(得分:0)

准确地来自您的要求

$('ul').next('br').remove();
$('ul').first('br').remove();

但是,Alnitak有一种更优雅的方式。

答案 3 :(得分:0)

不要只使用JS,请使用CSS display : none

如果有人干扰JS,br仍然会在那里。这样做:

ul > br{display : none};

如果要删除它以获得更好的源代码,请使用:

$('ul > br').remove()

如果要删除te ul旁边的br,请改用thos选择器:

CSS

ul + br

的jQuery

$('ul + br')

答案 4 :(得分:-1)

这是你的questiov的演示

jQuery("ul").siblings("br").each(function(){
jQuery(this).remove();});

demo