2012-11-05 68 views
0

我正在使用knockout.js。我正嘗試通過自定義綁定創建確認對話框。我有一個數組people。通過foreach綁定我顯示與每個項目關聯的刪除鏈接數組的每個條目。當用戶點擊刪除鏈接時,確認對話框打開以確定用戶是否想要刪除它。要顯示確認對話框,我使用自定義綁定名稱confirm。每當用戶點擊刪除按鈕時,confirmMessageText(與元素相關的observable)值更改,因此confirm綁定更新函數調用。從此功能,用戶可以在確認對話框決定的基礎上刪除該項目。我創建了一個FIDDLE例也:敲除自定義綁定回調函數的問題參數名稱bindingContext

http://jsbin.com/ocakap/4/edit

我的問題:我面臨着自定義綁定更新回調函數參數名bindingContext問題。通過這個我正在訪問淘汰賽特殊屬性名稱$data,但對於每個條目$data包含陣列的最後一個元素對象(在我的小提琴示例中是Denise您可以通過點擊任何刪除鏈接警報發生時顯示$ data參數的值)。

我該如何解決這個問題,我將如何在更新回調函數中獲取數組的當前元素對象條目?

回答

1

在點擊綁定中,您更新確認消息,強制淘汰賽檢查所有依賴關係,在這種情況下,KO運行確認綁定3次,對話框出現的最後一項是數組中的最後一個人。

要解決這個問題,您需要引入一個變量來存放您要刪除的人員對象。

這裏是工作修復http://jsbin.com/ocakap/12/edit