我在Knockout中有一个数据绑定,如果条件为真,则应用CSS类。当我在类名中使用破折号(例如测试类)时,我得到一个javascript错误。
这是一个演示问题的小提琴:http://jsfiddle.net/sgvem/2/
<p data-bind="text: property, css: { with-dash: property().length > 0 }"></p>
有没有办法使用Knockout JS添加带破折号的类?
答案 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