【问题标题】:Knockout text databind erasing part of my Markup剔除文本数据绑定擦除我的标记的一部分
【发布时间】:2014-09-29 20:58:16
【问题描述】:

我在跨度上面临一个关于 Knockout JS 数据绑定的小问题。我想在百分比符号旁边绑定一个数字。我原来的 HTML 标记是这个:

<span>10</span><span>%</span>

然后,我会尝试使用以下表达式使数字动态化(我放弃了 JS,因为它工作正常,我认为这对我的情况没有必要):

<span data-bind="text: cartTotalPrice" /><span>%</span>

神秘地,包含 % 符号的 消失了,只显示绑定的数字。但是如果我执行以下操作,数字和符号就会正确显示:

<span data-bind="text: cartTotalPrice() + '%'" />

为什么会这样?正常吗?

谢谢。

【问题讨论】:

  • 您是否错过了行不通的“结束”,说它应该是 data-bind="text: cartTotalPrice"?在第二个带有 € 的示例中,它可能是因为您已正确设置结束“。

标签: data-binding knockout.js


【解决方案1】:

我认为问题在于您没有关闭 span 标签。使用显式关闭&lt;/span&gt;

&lt;span data-bind="text: cartTotalPrice"&gt;&lt;/span&gt;&lt;span&gt;%&lt;/span&gt;

【讨论】:

  • 对不起,我更正了,我只是发错了。是的,它已正确关闭,否则 Visual Studio 会由于格式错误而向我发出警报。
  • 您的更新版本与我写的不符。它仍在使用自闭标签。
  • 哇,使用显式关闭标签而不是自动关闭标签解决了这个问题。非常感谢!这不是很奇怪吗?
  • @DavidJiménezMartínez span 总是需要结束标签。浏览器比淘汰赛更宽容。
猜你喜欢
  • 2020-10-18
  • 1970-01-01
  • 1970-01-01
  • 2015-03-15
  • 2013-11-12
  • 1970-01-01
  • 2011-05-30
  • 2016-02-18
  • 1970-01-01
相关资源
最近更新 更多