私は非常に単純なView Modelを持っています:
var ViewModel = function() {
this.showRow = ko.observable(false);
this.toggleVisibility = function() {
if(this.showRow == true){
this.showRow = false;
}
else{
this.showRow = true;
}
alert('showRow is now '+this.showRow); //only here for testing
};
};
同様に単純なマークアップを使用:
<a href="#" data-bind="click: toggleVisibility">Toggle</a>
<br />
<table>
<tr data-bind="visible: showRow">Some Text</tr>
</table>
私の問題は、リンクをクリックするとアラートボックスが表示されることです(正しい値を表示する - true/false)
ただし、tr
要素の目に見えるバインディングは機能していないようです-最初(ロード時に行が非表示になるはずです)またはshowRow
トグルの値のいずれかです。
上記の jsFiddle - http://jsfiddle.net/alexjamesbrown/FgVxY/3/