我有一个淘汰视图模型,它被设置为一个可观察的主视图模型。在子元素中,似乎我无法像在父元素中那样设置data-bind="click:
。
我的HTML:
<button id="myButton" type="button" class="btn btn-lg btn-primary" data-bind="click: test">Click Me</button>
在我的主视图模型中:
self.childElement = ko.observable(new childElementVm());
并在childElementVm
var childElementVm= function () {
var test = function(){
alert('this is a test');
}
}
在这里使用data-bind="click: test"
我需要做些什么?
需要注意的是,我的applyBindings很好(其他的挖掘可观察对象正常运行),按钮包含在<div data-bind="with: childElement"
答案 0 :(得分:3)
您的test
功能仅限于childElementVm
。将您的实施更改为:
var childElementVm= function () {
this.test = function(){
alert('this is a test');
}
}
或者这个:
var childElementVm= function () {
var self = this;
self.test = function(){
alert('this is a test');
}
}
这是一个有效的example