Javascript-декодирование html-объектов

Возможный дубликат:
Как декодировать объекты HTML с помощью jQuery?

Я хочу преобразовать этот текст:

"<p>name</p><p><span style="font-size:xx-small;">ajde</span></p><p><em>da</em></p>"

в html, с тегами и все в Javascript или JQuery. Как это сделать?

Ответ 1

var text = '<p>name</p><p><span style="font-size:xx-small;">ajde</span></p><p><em>da</em></p>';
var decoded = $('<textarea/>').html(text).text();
alert(decoded);

Это устанавливает innerHTML нового элемента (не добавляется к странице), заставляя jQuery декодировать его в HTML, а затем оттягивается с помощью .text().

Живая демонстрация.

Ответ 2

В этом потоке есть решение jQuery. Попробуйте что-то вроде этого:

var decoded = $("<div/>").html('your string').text();

Это устанавливает innerHTML нового элемента <div> (не добавляется к странице), заставляя jQuery декодировать его в HTML, а затем отбрасывается с помощью .text().

Ответ 3

Использование jQuery проще всего:

var text = '&lt;p&gt;name&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:xx-small;"&gt;ajde&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;da&lt;/em&gt;&lt;/p&gt;';

var output = $("<div />").html(text).text();
console.log(output);

DEMO: http://jsfiddle.net/LKGZx/

Ответ 4

Я думаю, вы ищете это?

$('#your_id').html('&lt;p&gt;name&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:xx-small;"&gt;ajde&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;da&lt;/em&gt;&lt;/p&gt;').text();