здравствуйте, есть переменная в которой хранится такой текст:
всем привет <h4>это я</h4> и это мой сайт:
<a href="mysite.com" target="_blank">mysite.com</a>
как можно из этого текста сделать такой текст:
всем привет <h4>это я</h4> и это мой сайт: mysite.com
то есть мне нужно убрать HTML код ссылки при этом оставив сам текст ссылки не затрагивая другие HTML тэги, спасибо
При условии валидности вашего html в переменной можно воспользоваться регуляркой для удаления открывающего/закрывающего тега a:
var text = "всем привет <h4>это я</h4> и это мой сайт:\n\
<a href=\"mysite.com\" target=\"_blank\">mysite.com</a> и <a href=\"mysite2.com\" target=\"_blank\">mysite2.com</a>";
text = text.replace(/<a[^>]*>|<\/a>/ig, '');
console.log(text);
Могу предложить такой фрагмент
var element = document.getElementsByTagName("a")[0];
var parent = element.parentNode;
while (element.firstChild)
parent.insertBefore(element.firstChild, element);
parent.removeChild(element);
<a href="google.com">ссылка</a> на сайт удалена
var s = 'всем привет <h4>это я</h4> и это мой сайт:\n\
<a href="mysite.com" target="_blank">mysite.com</a>';
$("body").html(s).find("a").replaceWith(function () {
return $(this).html();
});
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
var s = 'всем привет <h4>это я</h4> и это мой сайт:\n\
<a href="mysite.com" target="_blank">mysite.com</a>';
var els = $.parseHTML(s).map(function (x) {
return x.tagName === 'A' ? document.createTextNode(x.textContent) : x
});
$("body").append(els);
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости