Как отрисовывать блок ‘Escape’ HTML, возвращенный в ответ JSON

Я начинающий программист, пытающийся сделать простое приложение Meteor, в котором я могу отображать данные с другого сайта через REST API (сайт работает на Joomla, и я использую jBackend для REST API — однако это просто контекст и не относится к вопросу)

Когда я отправляю запрос GET и получаю ответ, возвращенный JSON дает мне содержание моей статьи как огромный блок HTML —

{
  "status": "ok",
  "id": "23",
  "title": "The Ivy",
  "alias": "the-ivy2",
  "featured": "0",
  "content": "<div class="venue-intro">rnt<h1>rnttttt<a href="index.php?option=com_content&view=article&id=23:the-ivy2&catid=14:leisure-activites" title="The Ivy">rntttttThe Ivyrnttttt</a>rnttt</h1>rnrnt<div class="row">rntt<div class="col-md-5">rnttttttt<div class="venue-intro-img">rnttttttttttt<a href="index.php?option=com_content&view=article&id=23:the-ivy2&catid=14:leisure-activites" title="The Ivy">rnttttttttttt<img src="http://localhost/stc/images/stories/com_form2content/p4/f20/thumbs/theIvy.jpg">rnttttttttttt</a>rnttttttttt</div>rnttttt</div>rntt<div class="col-md-7">rnttttttt<p><p>The Ivy is situated in the heart of London's West End, close to Leicester Square, Shaftsbury Avenue and the vibrant quarters of Covent Garden and Soho. Open late each night, the restaurant is...</p>rnttttt</div>rnt</div>rn</div><div class="venue-main">rn<h1>The Ivy</h1>rnt<img src="http://localhost/stc/images/stories/com_form2content/p4/f20/theIvy.jpg" class="venue-main-img">rnt<p><p>The Ivy is situated in the heart of London's West End, close to Leicester Square, Shaftsbury Avenue and the vibrant quarters of Covent Garden and Soho. Open late each night, the restaurant is also perfect for post theatre dinner. The Royal Opera House, Coliseum and all other theatres are a short walk away. The space can be arranged and dressed to suit your event- whatever the style and can accommodate 25-120 people.</p>rn<p>The room comes with a baby grand piano, fresh flowers, candles and place cards. AV equipment and musicians can be arranged and our event production company, Urban Caprice, can re-design and style the room for any event, supplying props, lighting and much more. We create seasonal menus especially for the Private Room, but let us know if you have any other favourite dishes and we'd love to try and include them.</p>rn<p><a href="http://www.the-ivy.co.uk/" target="_blank">http://www.the-ivy.co.uk/</a></p></p>rn</div>"
}

Я пытаюсь сделать этот блок таким, как есть в моем приложении, но я не могу управлять им — вот то, что я пытался до сих пор —

Template.articles.helpers({
  'content': function() {
    return $('<div />').html(this.content).text();
  }
});

Использование этого метода дает мне эти выходные данные —

<div class="venue-intro"> <h1> <a href="index.php?option=com_content&amp;view=article&amp;id=23:the-ivy2&amp;catid=14:leisure-activites" title="The Ivy"> The Ivy </a> </h1> <div class="row"> <div class="col-md-5"> <div class="venue-intro-img"> <a href="index.php?option=com_content&amp;view=article&amp;id=23:the-ivy2&amp;catid=14:leisure-activites" title="The Ivy"> <img src="http://localhost/stc/images/stories/com_form2content/p4/f20/thumbs/theIvy.jpg"> </a> </div> </div> <div class="col-md-7"> <p></p><p>The Ivy is situated in the heart of London's West End, close to Leicester Square, Shaftsbury Avenue and the vibrant quarters of Covent Garden and Soho. Open late each night, the restaurant is...</p> </div> </div> </div><div class="venue-main"> <h1>The Ivy</h1> <img src="http://localhost/stc/images/stories/com_form2content/p4/f20/theIvy.jpg" class="venue-main-img"> <p></p><p>The Ivy is situated in the heart of London's West End, close to Leicester Square, Shaftsbury Avenue and the vibrant quarters of Covent Garden and Soho. Open late each night, the restaurant is also perfect for post theatre dinner. The Royal Opera House, Coliseum and all other theatres are a short walk away. The space can be arranged and dressed to suit your event- whatever the style and can accommodate 25-120 people.</p> <p>The room comes with a baby grand piano, fresh flowers, candles and place cards. AV equipment and musicians can be arranged and our event production company, Urban Caprice, can re-design and style the room for any event, supplying props, lighting and much more. We create seasonal menus especially for the Private Room, but let us know if you have any other favourite dishes and we'd love to try and include them.</p> <p><a href="http://www.the-ivy.co.uk/" target="_blank">http://www.the-ivy.co.uk/</a></p><p></p> </div>

Это выглядит как совершенно корректный HTML, но проблема в том, что браузер не рендерит его как таковой — он просто выводит эту длинную строку буквально.

В конце дня я хотел бы иметь возможность отобразить HTML, который я получаю в своем ответе JSON.

Любая помощь ценится.

1 ответ

  1. Blaze имеет способ визуализации необработанных HTML-строк с использованием тройных фигурных скобок вместо обычных двух.

    Имеющий

    {{{content}}}
    

    в вашем шаблоне должен отображаться ваш контент, при условии, что помощник возвращает допустимый HTML.

    Будьте очень осторожны при его использовании, особенно если он содержит пользовательский контент.