2012-06-14 4 views
0

이 문제에 좌절감을 느낍니다. knockoutJS를 사용하여 시각적 인 상호 작용을 할 수 있습니다.KnockoutJS 바인딩이 작동하지 않음

내가 가지고있는 것은 AJAX 호출로 일부 데이터의 유효성을 검사하는 버튼입니다. 이 호출은 CanProceed 속성과 다른보기 설정을 나타내는 개체를 다시 보냅니다. 이 코드는 CanProceed (true)로 설정하면 더 많은 DIV가 포함 된 DIV가 켜지고 각 가시성 속성은 서버에서 설정된 Permissions.AllowXXX에 바인딩됩니다.

예제는 바이올린을 참조

http://jsfiddle.net/RcCAx/

내가 내가 서버에서 권한을 얻을 때 객체에 대해 녹아웃을 말할 수 있어야한다 일어날 갖고 싶어하고 페이지 UI 업데이트를 하지만 작동하지 않습니다. 내가 CanProceed 속성과 같이 먼저 관찰 가능하다고 선언하면 작동하지만, ko.mapping.fromJS (serverdataobject)를 사용하면 이전에 바인딩 된 내용이 업데이트되지 않습니다.

도움말 ...... 솔루션에 대한

답변

1

See updated fiddle. 여기서 핵심은 사용 권한을 관찰 가능으로 유지하는 것입니다.

+0

이제 "with :"바인딩으로 실제로 어떻게됩니까? – Matt

+0

필자는 필자가 필요로하지 않지만, 여기와 같은 지저분한 바인딩 문자열을 피하기 위해 주로 사용했습니다 : [피들] (http://jsfiddle.net/RcCAx/3/). 나는 또한'self.Permissions = ko.observable()'을'self.Permissions = ko.observable ({}) '으로 변경해야만했다. 그렇지 않으면 바인딩 문자열의'Permissions()'이 정의되지 않을 것이다. – antishok

관련 문제