2016-01-13 3 views
0

У меня есть некоторые угловые выражения, содержащие данные, поступающие из базы данных. Некоторые из этих данных содержат теги HTML в базе данных и должны быть декодированы как таковые в HTML.Угловая - декодировать строку как HTML

функция JavaScript:

vm.showTechnicalSupport = function() { 
     $http.get('Navigation/GetTechSupportInformation').success(function (data) { 
      vm.techSupportHours = data.techSupportHours; 
     }) 

    } 

HTML:

<span>{{ vm.techSupportHours}}</span> 

Проблема заключается в том techSupportHours отображает сырые HTML-теги вместо рендеринга разметки. Например, на странице отображаются видимые ярлыки br. Есть ли способ изменить мое угловое выражение для декодирования этих данных?

+0

Возможный дубликат [Как отобразить   или любой сырой HTML в угловых данных] (http://stackoverflow.com/questions/24657386/how-to- display-nbsp-or-any-raw-html-in-angle-data) – groteworld

ответ

2

Существует директива под названием ng-bind-html, которая является тем, что вы ищете. Так просто изменить шаблон HTML, чтобы быть:

<span ng-bind-html="vm.techSupportHours"></span> 
+0

Ничего не отображается, когда я использую эту директиву. – noclist

+0

@noclist Pleas гарантирует, что вы также включите «угловую санитацию», это часть Углового, но не включенная в core angular.js. Вы можете увидеть рабочий пример здесь: http://plnkr.co/edit/oS492EJ0OujuC9M0Vt1V?p=preview –

+0

@noclist сделал это, решив вашу проблему? –

Смежные вопросы