Удалить теги 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-теги.

Live Demo

withoutP = $(content).text()
var content = "a<br />";
var withoutP = $(content).text()
alert(withoutP )

Этот не работает для решения.text().

myString.replace(/<[^>]*>?/gm, '');

Этот проверяет специальные символы

var $string = '&lt;a href=&quot;link&quot;&gt;aaa&lt;/a&gt;';
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. Используйте этот код, чтобы получить простой текст без осложнений с неполными тегами, &lt; и т.п.

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');
Другие вопросы по тегам