Chcę usunąć znacznik HTML z ciągów, na przykład Usuń Div, P, Br, ...

Próbuję to zrobić:

var mystring = "<div><p>this</p><p>is</p><p>my</p><p>text</p><p>sample</p><p> </p><p> </p></div>"

var html3 = $(mystring).text();

Ale wynik jest taki:

"thisismytextsample  "

Jak to zrobić: "To moja próbka tekstu"

5
jiji2663 12 sierpień 2014, 13:27

3 odpowiedzi

Najlepsza odpowiedź

Możesz użyć funkcji Wymień:

var mystring="<div><p>this</p><p>is</p><p>my</p><p>text</p></div>"
var stripped = mystring.replace(/(<([^>]+)>)/ig," "); // this is my text

Źródło: http://css-tricks.com/snippets/ JavaScript / Strip-HTML-Tags-in-javascript /

1
Sudharsan S 12 sierpień 2014, 09:49

Możesz uzyskać tekst znacznika P Tekst w tablicy, a następnie dołącz do nich ze spacjami:

$(mystring).find('p').map(function() {
   return $(this).text();
}).toArray().join(' '));

Demo robocze

4
Milind Anantwar 12 sierpień 2014, 09:36

Spróbuj tego za pomocą wyrażenia regularnego

var mystring="<div><p>this</p><p>is</p><p>my</p><p>text</p><p>sample</p><p> </p><p> </p></div>"


function RemoveHTMLTags(string1) {
            var regX = /(<([^>]+)>)/ig;
            var html = string1;
            return html.replace(regX, " ");
        }


var res = RemoveHTMLTags(mystring);

alert(res);

PRÓBNY

1
Sudharsan S 12 sierpień 2014, 09:46