knockoutjs visible
以前在项目中开发时,利用knockoutjs中的visible属性来隐藏,显示div。通过给visible绑定一个表达式,发现没有效果,以为只能绑定bool值。这几天开发又遇到这个问题,所以决定一探究竟。分别写了两种绑定方式的:
<div id="testDiv"> <div> <a data-bind="click: showHiddenFirst"href="#">Show first</a> <div data-bind="visible: isVisibleFirst()"> bool值绑定 </div> <div data-bind="visible:count()==1"> 表达式绑定 </div> </div> </div> <script type="text/javascript"> var vm = function () { this.isVisibleFirst = ko.observable(true); this.count = ko.observable(1); this.showHiddenFirst = function () { if (this.isVisibleFirst() == true) { this.isVisibleFirst(false); this.count(2) } else { this.isVisibleFirst(true); this.count(1) } }; } ko.applyBindings(new vm(),document.getElementById("testDiv")); </script>
经测试,两种方式都可以。