Ответ 1
Почему бы просто не позволить jQuery сделать это?
var content = "<p>Dear sms,</p><p>This is a test notification for push message from center II.</p>";
var text = $(content).text();
У меня есть этот код:
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."
Почему бы просто не позволить 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>
Поместите hidden element
в разметку или создайте его из jQuery. Используйте этот код для получения простого текста без осложнений с неполными тегами, <
и т.д.
content = $(hiddenElement).html($(hiddenElement).html(content).text()).text();
Выше мой подход не работает для меня. поэтому я получил одно альтернативное решение для решения этой проблемы`
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);
Использовать регулярное выражение:
var cleanContent = content.replace(/(<([^>]+)>)/ig,"");
function htmlTagremove(text) {
var cont = document.createElement('div'),
cont.innerHTML=text;
return $(cont).text();
}
htmlTagremove('<p><html>test');