我写了angularjs应用程序并拥有这段代码但只是第一个html-bind-html适用于我
<div ng-bind-html='newsTitle'>
<div ng-bind-html='newsDetail'></div>
</div>
当我改变这样的优先级时:
<div ng-bind-html='newsDetail'>
<div ng-bind-html='newsTitle'></div>
</div>
显示newsDetail值。 我可以声明每页有多少ng-bind-html?为什么第二个值没有显示?
答案 0 :(得分:2)
我想我理解你的问题。
<div ng-bind-html='newsTitle'> <!-- This will replace the content of the div with $scope.newsTitle -->
<div ng-bind-html='newsDetail'> <!-- So this won't appear, because it has been removed by ng-bind-html='newsTitle' -->
</div>
</div>
在代码中查看我的评论。因此,如果您首先放置newsDetails,绑定的HTML($ scope.newsDetail)将替换当前内容。
总之, ng-bind-html 会使用您提供的绑定HTML替换元素的当前内容。所以你不应该把HTML放在这些元素中。
你只需做这样的事情:
<div class="news">
<div ng-bind-html='newsTitle'></div>
<div ng-bind-html='newsDetail'></div>
</div>
有关ngBindHtml指令的一些文档:https://docs.angularjs.org/api/ng/directive/ngBindHtml
答案 1 :(得分:1)
如果它是你的HTML的真实副本。然后我想这是结构问题。请关闭你的区块:
<div> </div>
答案 2 :(得分:1)
你可以试试这样写
<div><span ng-bind-html='newsTitle'></span></div>
<div><span ng-bind-html='newsDetail'></span></div>