繁体   English   中英

Knockout.js条件绑定

[英]Knockout.js conditional binding

您如何基于其他属性进行条件绑定?

例..

var ViewModel = {
   IsAdded = ko.observable(),
   AddedBy = ko.observable()   
}

当我显示它时..如果I⚓By为null或false,我不想显示AddedBy

像这样的东西......

&ltinput 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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM