Удалить тег span в строке с помощью jquery
Как удалить тег span из строки, используя jquery? У меня есть несколько тегов span в строковой переменной
<p>No Change<span style="color: #222222;"> </span>
I love cricket<span style="color: #222222;">Cricket cricket </span></p>
2 ответа
Решение
Если это определенно просто хранится как строка, вы можете сделать следующее...
var element = $(myString);//convert string to JQuery element
element.find("span").remove();//remove span elements
var newString = element.html();//get back new string
если на самом деле это уже отображается HTML на вашей странице, просто сделайте...
$("span").remove();//remove span elements (all spans on page as this code stands)
Если вы хотите сохранить содержимое тега span, вы можете попробовать это...
var element = $(myString);//convert string to JQuery element
element.find("span").each(function(index) {
var text = $(this).text();//get span content
$(this).replaceWith(text);//replace all span with just content
});
var newString = element.html();//get back new string
Вот рабочий пример (вы увидите два предупреждения: строка в начале, строка в конце)
Вы также можете просто сделать это, чтобы получить нужный вам результат:
var justText = $(myString).text();
Таким образом, вы можете сохранить внутренний текст диапазона, используя метод jquery.contents() (пример моего кода ниже):
$('#navc-22 > a > span').contents().unwrap();
Вы можете попробовать что-то вроде этого;
var theString = '<p>No Change<span style="color: #222222;"> </span>I love cricket<span style="color: #222222;">Cricket cricket </span></p>';
$(theString).wrap('<div />').find('span').remove();
... или вы хотели бы сохранить внутренний HTML?