Я хочу удалить теги HTML из строки. Например, предположим, что у нас есть строка:
<p> example ive got a string</P>
Как я могу написать функцию, которая удаляет <p><p> и возвращает только "пример, у меня есть строка"?
Ответ 1
безопасный способ заключается в том, чтобы полагаться на текстовое поле браузера, чтобы правильно избежать содержимого. Вот пример:
function stripHTML(dirtyString) {
var container = document.createElement('div');
var text = document.createTextNode(dirtyString);
container.appendChild(text);
return container.innerHTML; // innerHTML will be a xss safe string
}
document.write( stripHTML('<p>some <span>content</span></p>') );
document.write( stripHTML('<script><p>some <span>content</span></p>') );
var text = $("<p> example ive got a string</P>").text();
Обновить. Как указывает Бриллианд ниже, если строка ввода не содержит никаких тегов, и вам не повезло, ее можно рассматривать как селектор CSS. Таким образом, эта версия более надежна:
var text = $("<div/>").html("<p> example ive got a string</P>").text();
Ответ 3
Это пример получения изображения URL-адреса, из-за чего выйдете из тега p.