[英]KnockoutJS data-bind=“Visible :” with two conditions is not working
我想用KnockoutJS鍛煉一件簡單的事情。
我有兩個dropdowns
和一個textbox
。
我需要的
如果同時選擇了兩個下拉菜單,那么只有我應該顯示復選框。 否則,文本輸入應該不可見。
我嘗試了什么:
這是我的小提琴: https : //jsfiddle.net/vikash208/z4x5meua/13/
我使用過這樣的東西:
data-bind="visible: selectedValue && selectedControl"
從上面可以看出,條件如下:
IF selectedValue IS TRUE AND selectedControl IS NOT UNDEFINED
請給我一個解決方案,並在我錯誤的地方。 我是knockoutJS
的初學者
在綁定中使用多個條件時,需要打開observable以便可以計算整個表達式。
為此,只需在observable后添加括號:
<input type="text" class="form-control" data-bind="visible: selectedValue() && selectedControl()" />
您還可以使用其中的條件創建另一個計算的observable(注意,您仍然在計算的observable中打開observable)。 這可能是更好的選擇,因為它將邏輯保留在視圖模型中並且可以重用。
Txt.showCondition = ko.computed(function() {
return this.selectedItem() && this.selectedValue()
}, this);
然后只需將輸入綁定到此:
<input type="text" class="form-control" data-bind="visible: showCondition" />
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.