当视图模型属性更改复选框值时收到通知

发布于 2024-12-23 05:07:55 字数 288 浏览 0 评论 0原文

我的视图模型中有一个绑定到属性的复选框。当我勾选该复选框时,视图模型属性会更改,当我更改视图模型属性时,该复选框会勾选。

我想做的是当复选框值更改时收到通知(由视图模型更改触发)。如果我勾选复选框,我可以捕获“更改”事件,但是当我更改视图模型时,该事件不会触发。

我需要能够收到有关此更改的通知,因为我用来设置复选框外观的脚本依赖于此事件。

我将自定义绑定视为解决此问题的一种方法,但我希望有一个内置的解决方案。

我正在使用淘汰赛 1.7。

谢谢

I have a checkbox bound to a property in my view model. When I tick the checkbox the view model property changes, when I change the view model property the checkbox ticks.

What I'm trying to do is being notified when the checkbox value changes (triggered by the view model change). If I tick the checkbox I can catch the 'change' event, but when I change the view model the event doesn't fire.

I need to be able to be notified about this change because the script I use to skin the checkboxes relies on this event.

I looked at custom bindings as a way to get around this but I was hoping there was a built in solution.

I'm using knockout 1.7.

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦途 2024-12-30 05:07:55

如果您希望在用户勾选复选框以及视图模型属性以编程方式更改时收到通知,可以使用 Knockout 的 .subscribe 函数可观察到的值:

var viewModel = {
   isChecked: ko.observable(false)
};

viewModel.isChecked.subscribe(function(newValue) {
    // Do stuff here
});

If you want to be notified of when the user ticks the checkbox and when the view model property changes programmatically, you can use Knockout's .subscribe function on the observable value:

var viewModel = {
   isChecked: ko.observable(false)
};

viewModel.isChecked.subscribe(function(newValue) {
    // Do stuff here
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文