动态分配cssClass,淘汰不起作用

时间:2014-08-24 22:32:44

标签: javascript knockout.js

我定义了以下表格:

<tbody data-bind="foreach: timeslots">
    <td class="start-time" data-bind="text: time"></td>
    <td data-bind="text: displayStatus, class: cssClass, click: $parent.loadDetails"></td>
</tbody>

在我的Javascript文件中,我有条件地将cssClass设置为来自单独的.css文件的各种类:

// my viewmodel is a list of timeslot objects.  This is one instance
timeslot.cssClass = "event-invite";

我在css文件中定义了event-invite

.event-invite {
    background: #FFFF99;
    cursor: pointer;
}

但是,这个css实际上并没有绑定到我的元素。使用knockout动态绑定css类的正确方法是什么?

2 个答案:

答案 0 :(得分:1)

要绑定css,请使用以下语法:

<td data-bind="attr: {class: cssClass}"></td >

以下是描述此绑定的ko js页面:

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

答案 1 :(得分:0)

虽然segFault的解决方案有效,但我认为css绑定更直接:

<td data-bind="css: cssClass"></td >

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