javascript-淘汰赛检查属性无法正常工作
作者:互联网
嗨,我正在尝试使用带有剔除的复选框,我的行为似乎有问题,这是我的代码:
postModel = ko.observable('false');
<input type="checkbox" data-bind="checked:postModel.closeSession" id="dummid" checked>
<span data-bind="text: postModel.closeSession"></span>
当我运行我的应用程序时,这就是我得到的:
这是我希望得到的结果,但是当我单击复选框时,我希望它可以将observables值更改为true,但这就是我得到的结果:
再次单击,似乎可以观察到的值更改为true:
如果我再次单击,可观察值再次为假.
我的期望是,当选中复选框时,observable设置为true,而未选中时,设置为false.
我是在做错什么,还是被检查的属性应该如何工作?
解决方法:
如果您按如下方式在视图模型/标记上定义属性,则它将按预期工作.
JS
var ViewModel = function()
{
self = this;
self.closeSession = ko.observable(true);
}
var viewModel = new ViewModel();
ko.applyBindings(viewModel);
标记
<input type="checkbox" data-bind="checked:closeSession" id="dummid" checked>
<span data-bind="text: closeSession"></span>
JsFiddle
选中下面的小提琴中的框,以查看文本更新为正确的值.
标签:knockout-js,javascript 来源: https://codeday.me/bug/20191121/2055814.html