剑道绑定到html时不显示较少的符号(<)

时间:2013-10-04 14:10:11

标签: javascript kendo-ui

我有一个td元素:

<td data-bind="html: name"></td>

我在JavaScript中有数据

var name = '@Html.Raw(HttpUtility.JavaScriptStringEncode(Model.Name))';

型号名称为<tag< tag

在javascript中看起来像是:\u003ctag\u003c tag

在第一种情况下,我没有看到<tag及其后的所有内容。

在第二种情况下,我确实看到< tag

为什么第一个案例不起作用?

1 个答案:

答案 0 :(得分:4)

它不起作用,因为Element.innerHTML不知道如何处理你给它的参数。 在第二种情况下,输入被简单地视为文本,这就是它显示的原因,但在第一种情况下,它试图将其解释为HTML(毕竟,这就是innerHTML和kendo的html绑定所针对的。)

如果您要显示<tag,那么您应该只使用文字绑定:

<td data-bind="text: name"></td>

如果Model.Name实际上包含应该呈现的HTML,那么它应该格式良好并且具有结束标记。

实施例: http://jsfiddle.net/lhoeppner/qkzEt/

相关问题