我有一个初始化函数应用 Knockout 绑定并使用 jQuery 委托绑定其他一些事件。
init = function (){
ko.applyBindings(_data);
$('#tabs').tabs();
$('#container').delegate(".expand_all", "click", (function () {...})
}
视图模型有一个 observable 和一个在 ajax 调用后改变 observable 的函数:
function(data){
var self = this;
var name = ko.observable(data.name);
self.changeName = function(){
getName(function(data){
......
self.name(data.name);
......
......
}
}
}
HTML 标记
<div id="container">
<a href='#' data-bind='click: changeName'></a>
<div id="tabs">
<ul>
<li>......</li>
<li>......</li>
</ul>
</div>
<a href='#' class="expand_all"></a>
</div>
奇怪的是,在 changeName 被触发后,#tabs 和 #div 上的事件绑定都丢失了。
有人请阐明一下吗?