2011-11-18 94 views
6

將複雜值列表(id/ 說明)綁定到複選框列表時,出現問題。使用帶有複選框列表的淘汰賽中的已檢查綁定檢查所有複選框

問題是我不僅需要id或描述,而且還需要 。

當我使用Checked綁定進行綁定時,當我單擊一個項目時,將檢查列表 中的所有複選框。

這是更大的東西的一部分,我想的對象, 不是這個原因只是ID是又複雜的類型將有一個列表 我要綁定到複選框的另一個列表。

這裏是產生該問題的小提琴:http://jsfiddle.net/M8KFd/1

感謝你的幫助。

回答

10

我單獨跟蹤每個項目的狀態,然後開始使用一個dependent observablethis

+0

太棒了!我的列表是來自後端的序列化數據,但是我最終循環了初始數組,掌控所選屬性:http://jsfiddle.net/M8KFd/2/ 順便說一句,您應該考慮使用'ko.utils.arrayFilter'而不是'$ .grep'來避免混合代碼中的依賴關係。 謝謝! –

0

一個簡單的解決方案選定的項目,是假的CSS的複選框,然後用淘汰賽就叫這將傳遞一個方法整個項目的視圖模型:

<li data-bind="click: $parent.setCompany"> 
     <span data-bind="text: CompanyName"></span>, 
     <span data-bind="text: RegAddress_PostTown"></span> 
    </li> 

當然,這不適用於所有情況按照理查德朋友的答案。