Как преобразовать строку в формат html, используя e js in javascript - PullRequest
0 голосов
/ 10 марта 2020

Сценарий: пользователь введет текст в формате HTML (например, <\/b>Testing<\/b>), а затем вставленный текст будет сохранен в базе данных (HTML код в виде строки (например, <\b>Testing<\/b>). * 1003). *

Я хочу, чтобы строка, извлеченная из базы данных, отображалась в виде HTML текста (например, Тестирование ).

Я следовал приведенному ниже фрагменту, но ничего не получил как вывод.

Примечание: <%= cData.description %> работал нормально, когда выполнялся просто, но отображал HTML код в виде простого текста.

test. js (файл маршрута):

var testid = 234123;
b.find(testid, function(data) {
  b.otherdet(testid, function(cdata){
    res.render('blogdesc',{
      Data: data,
      cdata: cdata
    });     
  });
});

test.e js file:

<p class="" id="descid"></p>

<script>
  var $log = $( "#descid" );
  html = $.parseHTML('<%= cData.description %>'); //description is column in database
  $log.append( html );
</script>

Ответы [ 2 ]

1 голос
/ 10 марта 2020

{ ссылка } показывает, как передать HTML как есть в E JS, но, пожалуйста, убедитесь, что вы санируете этот контент, чтобы избежать XSS.

0 голосов
/ 10 марта 2020

Я нашел, где сделал go неправильно. Я использовал:

html = $.parseHTML('<%=blogData.description%>');

, в то время как фактический синтаксис должен быть таким:

html = $.parseHTML('<%-blogData.description%>');
...