【问题标题】:Handling knockout text that contains string and html处理包含字符串和 html 的剔除文本
【发布时间】:2013-11-11 15:49:27
【问题描述】:

我有一个正在运行的应用程序,现在我将其移至移动版本。我正在使用已经为 Web 创建的所有服务。因此,使用这些服务时,我有时会收到类似这样的文本。

var serverString = 'like this image <img src="abc.png">'

当我将它分配给淘汰赛属性时

self.PropertyName(serverString)

并绑定它,它会产生这个字符串。

like this image <img src="abc.png">

我希望移动服务器或网络服务器读取文本,以便文本保持不变,但标签转换为标签而不是将标签显示为标签,它应该将标签显示为图像。
我该怎么做?

这是我的绑定

<p data-bind="text:PropertyName"></p>

【问题讨论】:

  • 同时显示您的绑定。

标签: javascript jquery knockout.js


【解决方案1】:

http://knockoutjs.com/documentation/html-binding.html

目的

html 绑定使关联的 DOM 元素显示您的参数指定的 HTML。

通常,当您的视图模型中的值实际上是您要呈现的 HTML 标记字符串时,这很有用。

<div data-bind="html: details"></div>

<script type="text/javascript">
    var viewModel = {
        details: ko.observable() // Initially blank
    };
    viewModel.details("<em>For further details, view the report <a href='report.html'>here</a>.</em>"); // HTML content appears
</script>

【讨论】:

  • 好的,谢谢,我已经测试过了,一切正常。我发现我需要使用的只是 html 而不是文本。我认为我将不得不做其他事情。从来没想过它是这样工作的。再次感谢。
  • 请注意文档页面末尾的警告;您至少需要确保您收到的数据没有任何script 标签,因为这会使您容易受到跨站点脚本攻击。
猜你喜欢
  • 2020-08-03
  • 1970-01-01
  • 2012-06-03
  • 2016-02-25
  • 1970-01-01
  • 2014-06-21
  • 1970-01-01
  • 2015-01-26
  • 1970-01-01
相关资源
最近更新 更多