Binding 如何在knockout.js中进行条件绑定?
我试过这个:Binding 如何在knockout.js中进行条件绑定?,binding,knockout.js,Binding,Knockout.js,我试过这个: <div data-bind="attr: {class: itemSelected? 'selected' : 'unselected' }"></div> 但它不起作用:)假设您有: function viewModel() { this.itemSelected = ko.observable(true); } ko.applyBindings(new viewModel()); 在itemSelected之后添加一个()以获取可观察
<div data-bind="attr: {class: itemSelected? 'selected' : 'unselected' }"></div>
但它不起作用:)假设您有:
function viewModel() {
this.itemSelected = ko.observable(true);
}
ko.applyBindings(new viewModel());
在itemSelected之后添加一个()以获取可观察对象的当前值,该值可与三元运算符一起使用:
代码>
如果不需要为非选定状态分配未选定的类,则可以改为:
<div data-bind="css: { selected: itemSelected }"></div>
以下内容对我有效,我同时使用了css和id属性,对我来说,如果css属性不是第一个属性,它就不起作用,所以请将css属性保留为第一个属性
<div class="panel-collapse collapse" data-bind="css:{in:$index()==0}, attr: { id:'collapse'+$index()} ">
...
...
...
</div>
...
...
...
您是否尝试过在itemSelected和“”之间使用空格?attr:{class:itemSelected?'selected':'unselected'}在knockout.js中“空格”有意义吗?当它将问号从变量中分离出来时会有意义。