【发布时间】:2012-02-27 23:42:24
【问题描述】:
我有一个像这样定义的 Knockout 视图模型:
function viewModel () {
var self = this;
self.myName = ko.observable();
self.myValue = ko.observable("10");
};
现在我需要在点击链接时更改视图模型的值,如下所示:
$('a.treeitem').live("click", function (e) {
e.preventDefault();
viewModel.myValue("20"); // this line does not work
});
但是,我找不到设置值的正确方法,Chrome 控制台显示以下消息: Uncaught TypeError: Object function viewModel() { ... } has no method 'myValue'
【问题讨论】:
-
不要再使用
live():) 它已被弃用。最好使用on()。有关弃用的更多信息,请参阅 live() 页面 -
不错!我已将代码从 live() 更改为 on()。谢谢。