【发布时间】:2014-11-19 05:32:50
【问题描述】:
我想注入一个 html,它是渲染 django 模板的结果。 Django 模板:
class CView(View):
def get(self, request):
return render_to_response('my_template.html', {},content_type="application/json")
硬编码时生成的 html 会正确显示。 我想将收到的 html 代码注入到 div 中。问题是引导手风琴组件不显示。我只得到文本。
角度控制器中的代码:
$scope.myHTML = '<div>Loading..<div>';
$scope.to_trusted = function (html_code) {
return $sce.trustAsHtml(html_code);
}
dataService.getMyHtml().success(function (data) {
$timeout(function () {
$scope.$apply(function () {
$scope.myHTML = data;
})
}, 0);
}).error();
html代码:
<div ng-bind-html="to_trusted(myHTML)"></div>
myHTML 包含这样的内容:
<div class="col-sm-3 col-md-2 sidebar">
<accordion close-others="true">
<accordion-group>
<accordion-heading>
Items One <i class="pull-right glyphicon"
ng-class="{'glyphicon-chevron-down': status.open, 'glyphicon-chevron-right': !status.open}"></i>
</accordion-heading>
<ul class="nav nav-sidebar">
<li><a href="#/one">One 1</a></li>
<li><a href="#/two">One 2</a></li>
</ul>
</accordion-group>
<accordion-group>
<accordion-heading>
Items Two <i class="pull-right glyphicon"
ng-class="{'glyphicon-chevron-down': status.open, 'glyphicon-chevron-right': !status.open}"></i>
</accordion-heading>
<ul class="nav nav-sidebar">
<li><a href="#/one">Two 1</a></li>
<li><a href="#/two">Two 2</a></li>
</ul>
</accordion-group>
</accordion>
</div>
上面的代码只是呈现为一个垂直列表菜单,但没有折叠。如果加载为静态 html 文件,相同的代码可以很好地呈现。 我正在使用 Angular 的 bootstrap。
【问题讨论】:
标签: jquery html css django angularjs