2012-04-16 49 views
1

基本上我製作了一個可重複的部分,並且希望所有複選框的檢查狀態都是由數組提供的。Knockout Javascript任何使用可綁定可觀察數組的foreach複選框部分的策略

  <div style="height: 100%; border: 1px solid grey; overflow-y: scroll;" id="AssociatedUsers" data-bind="foreach: AllUserList"> 
       <input type='checkbox' class='cSupUser' style="width:20px;margin:2px" value="$data" data-bind='checked: supplierUsers' /><span data-bind='text: $data.Text'></span><br /> 
      </div> 

但顯然值=「$ data」只是返回字符串「$ data」。我決定開始研究一個解決方案,我只是在保存並加載相關數據時使用json字符串映射數組,但這增加了複雜性,並且感覺像是黑客,所以我想知道是否有更好的方法來處理這個情況。我還希望supplierUsers可以直接映射到viewModel,因爲我將從viewModel生成對服務器的響應,但似乎observableArrays不適用於該參數。

我只用了3天的時間來使用淘汰賽框架,任何幫助/建議表示讚賞。

+0

這已被回答之前 - 我其實只是研究了這個相同的問題。這裏是問題和他們的答案,我發現的小提琴的鏈接:http://stackoverflow.com/questions/6736136/working-with-checkboxes-in-knockoutjs http://jsfiddle.net/rniemeyer/vgBUf/也:https://groups.google.com/forum/?fromgroups#!topic/knockoutjs/FQgAXguUFtY http://jsfiddle.net/AvFRK/ – daedalus28 2012-06-27 14:57:20

回答

1

我處理這個問題的方法是對每個複選框使用attr綁定。例如。

<input type="checkbox" data-bind="checked : supplierUsers, attr : { value : $data}" /> 
相關問題