@illiatovpeko
Самолепный ВебдевелопЁр

Как с помощью JQuery удалить теги блока, Не удаляя содержимое?

Имеется конструкция типа:
<div class="tra-la-la"><a href="https://www.somewher.ru" class="bla-bla-bla"> ... много разного содержимого </a></div>.


Нужно убрать тег a, но т.к. содержимого в ней много, unwrap вроде бы как не подходит.
Элементы каким-то загадочным образом (не наша админка) обернулись в такие ссылки, вот я их и разворачиваю.
  • Вопрос задан
  • 192 просмотра
Пригласить эксперта
Ответы на вопрос 1
delphinpro
@delphinpro Куратор тега JavaScript
frontend developer
В комментах указал на вашу ошибку.
Но если приспичило, можете идти в лобовую.
let s = document.querySelector('.tra-la-la').innerHTML;
s = s.replace(/^<a[^>]*>/, '').replace(/<\/a>$/, '');
document.querySelector('.tra-la-la').innerHTML = s;


PS возможно потребуется оттримить строку.

PPS
что-то я какую-то херню написал...

let s = document.querySelector('.tra-la-la > a').innerHTML;
document.querySelector('.tra-la-la').innerHTML = s;


PPPS. Не заметил что jquery, тогда еще проще/короче:
$('.tra-la-la').html($('.tra-la-la > a').html());
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы