Knockout JS - CSS在类名中绑定破折号

时间:2012-04-23 15:17:41

标签: javascript html knockout.js

我在Knockout中有一个数据绑定,如果条件为真,则应用CSS类。当我在类名中使用破折号(例如测试类)时,我得到一个javascript错误。

这是一个演示问题的小提琴:http://jsfiddle.net/sgvem/2/

<p data-bind="text: property, css: { with-dash: property().length > 0 }"></p>

有没有办法使用Knockout JS添加带破折号的类?

2 个答案:

答案 0 :(得分:53)

只需将其放在引号中:

<p data-bind="text: property, css: { 'with-dash': property().length > 0 }"></p>

这是一个updated fiddle

作为旁注,您不需要> 0,因为length的{​​{1}}将评估为0,而任何其他长度将评估为false 1}}:

true

答案 1 :(得分:7)

您可以使用'

来限定名称

像这样:

<p data-bind="text: property, css: { 'with-dash': property().length > 0 }"></p>

你的小提琴,updated

以下是解释css绑定的Knockout文档:http://knockoutjs.com/documentation/css-binding.html