[英]Remove all <br> tags from within a string – not working as expected
我已经尝试了十几种解决方案,但似乎没有任何帮助。
HTML:
<div class="mont-text-content mobile">С чего следует начинать запуск своего бизнеса.
<br><br>Как и где находить идеи для бизнеса.
<br><br>Как справляться со своими страхами и обрушивающейся критикой родных, друзей и знакомых. Когда вам говорят, что ничего не получится?
<br><br>Как понять, что вам действительно следует ступать на путь предпринимательства и заниматься бизнесом, а не работать на дядю с 9 до 18.
<br><br>Как себя мотивировать и находить силы, чтобы не сдаться?
<br><br>На все эти и другие вопросы вы найдете ответы на нашем юридическом бизнес-вебинаре.</div>
<div class="mont-text-content mobile">Правильный выбор видов деятельности и организационно-правовой формы вашего будущего бизнеса является очень важным фактором.
<br><br>Во-первых, для легализации деятельности, возможности открытого взаимодействия с государственными и частными органами, контрагентами, инвесторами и пр., оптимизации операций, которые подлежат налогообложению.
<br><br>А во-вторых, для возможности действовать в рамках правового поля, используя законодательство в качестве мощного инструмента для защиты и развития своего бизнеса.
<br><br>Вы узнаете, в чём состоит отличие ФЛП на 1 группе от 2 и 3 групп. А также какая организационно-правовая форма, по состоянию на сегодня, является самой оптимальной и менее «затратной» для бизнеса.</div>
JS:
$( ".mont-text-content.mobile" ).each(function( index ) {
let content = $(this).text();
let newContent = content.replace(/^(\s*<br\s*\/?\s*>\s*)*|(\s*<br\s*\/?\s*>\s*)*\s*$/g, '');
alert( index + ": " + newContent );
});
这是一个指向JSFiddle的链接
如您所见, <br>
标签被转换为奇怪的 uni-code 字符,并没有从字符串中删除。
你可以做这样的事情,但我不确定这是否最有效:
var x = $( ".mont-text-content.mobile" ).html();
var res = x.replace('<br>',"");
$(".mont-text-content.mobile" ).html(res);
你可以做这样的对不起用随机文本替换它只是为了更清楚。
$(".mont-text-content.mobile").each(function() { $(this).html($(this).html().replace(/\<br>/g, "")); });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="mont-text-content mobile"> Lorem ipsum dolor sit amet, consectetur adipiscing elit <br><br>Lorem ipsum dolor sit amet, consectetur adipiscing elit <br><br>Lorem ipsum dolor sit amet, consectetur adipiscing elit <br><br>Lorem ipsum dolor sit amet, consectetur adipiscing elit <br><br>Lorem ipsum dolor sit amet, consectetur adipiscing elit <br><br>Lorem ipsum dolor sit amet, consectetur adipiscing elit</div> <div class="mont-text-content mobile"> Lorem ipsum dolor sit amet, consectetur adipiscing elit <br><br>Lorem ipsum dolor sit amet, consectetur adipiscing elit <br><br>Lorem ipsum dolor sit amet, consectetur adipiscing elit <br><br>Lorem ipsum dolor sit amet, consectetur adipiscing elit</div>
你可以像这样简单地做到这一点:
document.querySelectorAll('.mont-text-content').forEach((divElm) => {
Array.from(divElm.children).forEach((elm) => {
if (elm.tagName === 'BR') {
elm.remove();
}
});
});
它在 ES6 中。 但是改写成 ES5 很容易。
首先,我找到了所有名称为 class 的元素,然后在 forEach 循环中遍历这些元素。
接下来需要将 HTML 元素列表转换为数组,如果它是 br 标签,则 go 抛出数组并删除元素。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.