2013-11-27 4 views
0

컬렉션의 요소를 업데이트하는 데 문제가 있습니다.컬렉션 항목이 knockout.js에서 새로 고침되지 않습니다.

내 양식에 컬렉션이 있고 동일한 입력란이 '입력란'및 '기간'에 바인딩되어있는 경우 입력란의 수정 사항이 span 요소로 전파되지 않습니다.

<tbody data-bind='foreach: gifts'> 
    <tr> 
     <td> 
      <input class='required' data-bind='value: name, uniqueName: true' /> 
      <span data-bind='text: name' >&nbsp;</span> 
     </td> 
    </tr> 
</tbody> 

당신은 관찰 가능한 될 jsFiddle

답변

1

귀하의 모델의 nameprice 필요에 그것을 시도 할 수 있습니다 :

내 양식은 다음과 같습니다.

그래서 대신에 당신 :

var viewModel = new GiftModel([ 
    { name: "Tall Hat", price: "39.95"}, 
    { name: "Long Cloak", price: "120.00"} 
]); 

이를 수행

var viewModel = new GiftModel([ 
    new Item("Tall Hat", "39.95"), 
    new Item("Long Cloak", "120.00") ]); 

항목은 다음과 같다 : 여기

var Item = function(pName, pPrice) { 
    var self = this; 
    self.name = ko.observable(pName); 
    self.price = ko.observable(pPrice); 
}; 

을 작업 예제 : http://jsfiddle.net/D2agq/

+0

그레이트, 이 작품! 감사 – lag

관련 문제