用javascript替换多个<br>标记

这个问题在这里已经有了答案:

  • 如何在JavaScript中替换所有出现的字符串? 41个答案

  • 你已经指定它在document.body ,所以在DOM中。 那么你可以(你应该)使用DOM方法:

    var siblingBrs = [].slice.call( document.querySelectorAll('br + br') );
    siblingBrs.forEach( function( br ){
        br.parentNode.removeChild( br );
    });
    

    http://jsfiddle.net/jL8jkkt0/

    注意源代码中<br />元素的字符串表示是不可知的。

    顺便说一句,如果它仅用于显示目的(为了避免视觉差距),你可以使用CSS:

    br + br { display:none; }
    

    http://jsfiddle.net/jL8jkkt0/1/


    尝试以下操作:

    var stripped = original.replace(/(<brs*/?>){3,}/gi, '<br>');
    

    在这里替换不同的值...

    {3,}
    

    ...将允许您控制清除发生的次数。

    希望这可以帮助!


    首先获取HTML作为字符串,然后使用正则表达式替换它:

    var s = document.body.innerHTML;
    document.body.innerHTML = s.replace(/(<br[s]*/?>[s]*)+/g, '<br/>');
    First Line<br><br /><br/><br><br /><br/>Second Line
    链接地址: http://www.djcxy.com/p/94037.html

    上一篇: replace multiple <br> tags with javascript

    下一篇: Helper functions & prototype methods to replace heavy frameworks?