2017-09-05 49 views
0

我有一个项目列表,它使用Knockout.js绑定到单击事件。Rebinding Knockout单击事件

<a data-bind="attr: { title: 'Edit ' + ContactName() }, click: $parent.preEditContact" title="Edit Contact"></a> 

此功能完美运作。当我向敲除列表中添加一条新记录时,会出现问题,我称其为按字母顺序对敲除列表进行排序的排序函数。

sort函数对列表进行排序,清空它,然后附加重新排序的列表。

当这样做淘汰赛的项目失去他们的点击结合parent.preEditContact

我怎样才能重新绑定click事件?

回答

0

除了使用我的临时排序代码外,实际上还有可用于Knockout.js的保留点击绑定的排序函数。

用于如下一个列表排序,同时保留点击绑定的代码是:

self.Contacts.sort(function(a,b){ 
var a1 = a.ContactName().toLowerCase(); 
var b1 = b.ContactName().toLowerCase(); 
return a1.localeCompare(b1); 

});

+0

你可以接受你的答案,这样人们就不会认为它在预览页面仍然没有解决...... – Ray

+0

它说我不能将我的答案标记为至少另一天的正确答案 –