【问题标题】:Why AngularJS prints double quotation in HTML为什么 AngularJS 在 HTML 中打印双引号
【发布时间】:2017-05-08 03:19:23
【问题描述】:

使用 AngularJs,我试图用图像显示货币兑换。下面是我的 Razor 代码。

<span ng-controller="CurrencyController">
     <span ng-bind="currencies"></span>
</span>

我正在从控制器发送以下文本

string text = "Dollar : 1.7 <img src=\"~/Images/Currency/up.png\">";

在渲染HTML的时候,我在Chrome中看了下源码,看到下面的HTML...

<span class="ng-binding">
     "Dollar: 1.7 <img src="~/Images/Currency/down.png">"
</span>

为什么在 HTML 中渲染的文本是用双引号括起来的?我该如何解决这个问题?

【问题讨论】:

  • 尝试在字符串中使用单引号而不是使用双引号并转义里面的。
  • 不应该使用ngBindHtml吗?
  • &lt;span ng-bind-html="currencies"&gt;&lt;/span&gt; 渲染 img 元素
  • 我认为这个链接可以帮助你@ArifYILMAZ docs.angularjs.org/api/ng/directive/ngBindHtml

标签: javascript html angularjs asp.net-mvc model-view-controller


【解决方案1】:

您应该使用 ng-bind-html,如文档中所述,是用于呈现 html 的指令。 ng-bind 只有在你不能渲染一个简单的 html 文本节点时才应该使用。

所以,你的代码应该是这样的:

<span ng-controller="CurrencyController">
   <span ng-bind-html="currencies"></span>
</span>

【讨论】:

  • 它没有用。我仍然不知道如何解决这个问题
猜你喜欢
  • 1970-01-01
  • 2022-01-13
  • 2015-11-28
  • 1970-01-01
  • 2015-03-14
  • 1970-01-01
  • 1970-01-01
  • 2015-05-09
  • 2015-11-17
相关资源
最近更新 更多