从javascript字符串中删除HTML标记

我有这个代码:

var content = "

Dear sms,

This is a test notification for push message from center II.

";

我想从上面的字符串中删除所有

标记。 只想显示没有html标签的字符串值,如:

 "Dear sms, This is a test notification for push message from center II." 

为什么不让jQuery这样做呢?

 var content = "

Dear sms,

This is a test notification for push message from center II.

"; var text = $(content).text();

这是我的解决方案,

 function removeTags(){ var txt = document.getElementById('myString').value; var rex = /(<([^>]+)>)/ig; alert(txt.replace(rex , "")); } 

使用普通的javascript:

 content = content.replace(/(

|<\/p>)/g, "");

您可以使用jQuery text()来获取without html标记的纯文本。

现场演示

 withoutP = $(content).text() 
 var content = "a
"; var withoutP = $(content).text() alert(withoutP )

这个不适用于.text()解决方案。

这个是检查特殊字符

 var $string = '<a href="https://stackoverflow.com/questions/13911681/remove-html-tags-from-a-javascript-string/link">aaa</a>'; var $string2 = 'aaa'; var $string3 = 'BBBBB'; var $string4 = 'partial
").html(string).text(); return $("
").html(decoded_string).text(); } console.log(StripTags($string)); console.log(StripTags($string2)); console.log(StripTags($string3)); console.log(StripTags($string4)); console.log(StripTags($string5));
  

hidden element放在标记中,或者从jQuery创建它。 使用此代码获取纯文本而不会出现不完整标签的复杂情况, < 等等

 content = $(hiddenElement).html($(hiddenElement).html(content).text()).text(); 

以上approch不适合我。 所以我有一个解决这个问题的替代解决方案

 var regex = "/<(.|\n)*?>/"; var originaltext = "1. Males and females were compared in terms of time management ability. 

The independent variables were the people in the study.

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('

test');