Удалить теги HTML из строки JavaScript
У меня есть этот код:
var content = "<p>Dear sms,</p><p>This is a test notification for push message from center II.</p>";
и я хочу удалить все <p>
а также </p>
теги из приведенной выше строки. Просто хочу отображать строковые значения без HTML-тегов, таких как:
"Dear sms, This is a test notification for push message from center II."
12 ответов
Почему бы просто не позволить jQuery это сделать?
var content = "<p>Dear sms,</p><p>This is a test notification for push message from center II.</p>";
var text = $(content).text();
Вот мое решение,
function removeTags(){
var txt = document.getElementById('myString').value;
var rex = /(<([^>]+)>)/ig;
alert(txt.replace(rex , ""));
}
Используя простой JavaScript:
content = content.replace(/(<p>|<\/p>)/g, "");
Вы можете использовать jQuery text (), чтобы получить простой текст without
HTML-теги.
withoutP = $(content).text()
var content = "a<br />";
var withoutP = $(content).text()
alert(withoutP )
Этот не работает для решения.text().
Этот проверяет специальные символы
var $string = '<a href="link">aaa</a>';
var $string2 = '<a href="link">aaa</a>';
var $string3 = 'BBBBB';
var $string4 = 'partial<script';
var $string5 = 'has spaces';
function StripTags(string) {
var decoded_string = $("<div/>").html(string).text();
return $("<div/>").html(decoded_string).text();
}
console.log(StripTags($string));
console.log(StripTags($string2));
console.log(StripTags($string3));
console.log(StripTags($string4));
console.log(StripTags($string5));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
вы можете использовать модуль striptags , чтобы удалить HTML и получить текст. Это довольно простое и простое решение.
Выше подход не работает для меня. поэтому у меня есть одно альтернативное решение для решения этой проблемы`
var regex = "/<(.|\n)*?>/";
var originaltext = "1. Males and females were compared in terms of time management ability. <br><br>The independent variables were the people in the study.<br><br> Is this statement correct";
var resultText = body.replace(regex, "");
console.log(result);
Место hidden element
в разметке, или создайте его из jQuery. Используйте этот код, чтобы получить простой текст без осложнений с неполными тегами, <
и т.п.
content = $(hiddenElement).html($(hiddenElement).html(content).text()).text();
Используйте регулярное выражение:
var cleanContent = content.replace(/(<([^>]+)>)/ig,"");
function htmlTagremove(text) {
var cont = document.createElement('div'),
cont.innerHTML=text;
return $(cont).text();
}
htmlTagremove('<p><html>test');