我使用knockout js根据表达式的结果设置元素的类,我想知道的是,是否可以将类设置为视图模型中函数返回的值.
这就是我现在所做的工作:
<div data-bind="css: { highlightup : OneDayChange > 0 && SevenDayChange > 0}">
</div
Run Code Online (Sandbox Code Playgroud)
我想有类似的东西:
<div data-bind="css: { bothValuesIncreasing(); }">
</div
Run Code Online (Sandbox Code Playgroud)
编辑 澄清我希望类由函数返回的值设置,但它可能不是布尔值,它可能是函数返回的任何字符串
您需要使用计算属性.
var vm = function(){
var self = this;
self.OneDayChange = ko.observable();
self.SevenDayChange = ko.observable();
self.isBothValue = ko.computed(function(){
return self.OneDayChange() > 0 && self.SevenDayChange() > 0;
});
}
<div data-bind="css: { highlightup: isBothValue() }">
</div
Run Code Online (Sandbox Code Playgroud)
不要害怕将这些属性用于特定于视图的操作.那是什么视图模型创建的.
响应更新: 自定义绑定将是解决此问题的最佳选择.
实际上我在KnockoutJs google小组上找到了答案
绑定 - https://github.com/SteveSanderson/knockout/wiki/Bindings---class
演示 - http://jsfiddle.net/mbest/NBmjh/
| 归档时间: |
|
| 查看次数: |
6769 次 |
| 最近记录: |