比方說,我有一個Knockout.js:在數據綁定事件訪問父集合
<button type="button" data-bind="click: actions.remove">×</button>
和處理
var actions = {
remove: function(item) {
?array?.remove(item); // ?array? is a containing array, accessed somehow
}
}
如何找到?array?
這樣我就可以使用相同的button
在任何foreach
綁定?
澄清:
我知道該怎麼做,如果我把remove
到視圖模型。然而,視圖模型包含分層數組,我並不想完全通過它來獲取正確位置的方法。在ko.mapping
的幫助下,偶爾也會從服務器更新視圖模型,但這不會爲新數據添加任何方法。這就是爲什麼我分開實施處理程序。
最好的選擇是在http://knockoutjs.com/documentation/unobtrusive-event-handling.html –
討論我喜歡做data-bind =「click:$ parent.someArray.remove.bind($ parent.someArray)」見http://jsfiddle.net/drdamour/wzeNT/ –