[英]Knockout.js conditional binding
您如何基于其他属性进行条件绑定?
例..
var ViewModel = { IsAdded = ko.observable(), AddedBy = ko.observable() }
当我显示它时..如果I⚓By为null或false,我不想显示AddedBy
像这样的东西......
<input type="text" data-bind="value: if (IsAdded != null && IsAdded) { AddedBy }"/>
我知道那是不对的,但是类似的东西...
我会做的是这个;
var ViewModel = function() {
this.IsAdded = ko.observable('True');
this.AddedBy = ko.observable('Test');
this.AddedByText = ko.computed(function(){
if ( this.AddedBy() != null && this.IsAdded() ) return this.AddedBy()
return "";
}, this);
}
然后您的输入将是
<input type="text" data-bind="value: AddedByText" />
这样,您可以将逻辑包含在ViewModel中并与HTML分开。
这个问题很旧,但可能会帮助其他人寻找
<input type="text" data-bind="value: IsAdded ? AddedBy : "" "/>
基本上,如果我的收藏夹不为空,则将value
设置为AddedBy,否则不执行任何操作
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.