我有以下实现:
define(["jquery", "knockout", "jqueryMobile"], function ($, ko) {
ko.bindingHandlers.jqmRefreshList = {
init: function(element, valueAccessor) {
alert('I am fired!');
},
update: function (element, valueAccessor, allBindingsAccessor, viewModel, bindingContext) {
ko.utils.unwrapObservable(valueAccessor());
$(element).listview("refresh");
}
};
})
我这样使用它:
<div data-bind="foreach :lineItems , jqmRefreshList :true">
<div>Hello World</div>
</div>
问题是即使lineItems包含10-15个条目,“Hello World”div也只打印一次。我检查了jqmRefreshList自定义绑定,并且从不触发init和update函数。我做错了什么?