현재 내 검도 그리드의 페이지 매김/필터링에 문제가 있습니다. 내 표는 문자 그대로 모델에서 데이터를 뱉어 내고 모델에서 데이터를 표시하지만 Kendo 툴팁에는 녹아웃 바인딩이 적용된 6 개의 열 4가 꽤 표준 적입니다. 내가 겪고있는 문제는 특히 툴팁 MVVM 바인딩과 관련이 있습니다. 두 번째 페이지로 이동하거나 표를 필터링하면 도구 설명이 나타나지 않습니다.검도 그리드 용 녹아웃 바인딩 다시 적용하기
바인딩을 페이지에 적용 할 때 새로운 행에 대한 새로운 html이 존재하지 않는다는 문제점을 좁혀 냈습니다. 바인딩을 새로운 HTML 권한에 다시 적용하는 간단한 문제는 무엇입니까? 잘못된. 그게 확실 해요 솔루션을하지만 난 어떻게 새로운 HTML을 생성하는 자사의 검도로 그것을 달성하기 위해 알아낼 수 없으며 그것을 가로 채고 바인딩을 다시 적용하는 새로운 HTML을 잡아 수있는 방법을 알아낼 수 없습니다.
self.interceptPaging = function(e) {
var newElements = e.sender.content;
ko.applyBindingsToNode(newElements[0], null, viewModel);
}
그러나 어디 새로운 요소에서받을 수 있나요 :
나는이 솔루션은이 같은 것을 포함 할 겠지? 즉, e.sender.content는 격자를 두 번 바인딩하는 것에 대한 오류를 발생시킵니다. 제안을 환영합니다!
내 문제의 작동 예제는 내 Fiddle을 참조하십시오.
UPDATE : Here
업데이트 # 2 : 솔루션
찾을 솔루션 jsFiddle 녹아웃 3.2 작업에 문제가있는 것 같다, 나는이 Telerik의 도장이 점을 연결
. 위의 databound 함수 위에 하위 바인딩을 사용하지 않도록 사용자 지정 바인딩 처리기를 추가해야했습니다.
ko.bindingHandlers.allowBindings = {
init: function (elem, valueAccessor) {
// Let bindings proceed as normal *only if* my value is false
var shouldAllowBindings = ko.unwrap(valueAccessor());
return { controlsDescendantBindings: !shouldAllowBindings };
}
};
이 속성을 검도 그리드 div에 추가했습니다.
<div data-role="grid"
data-bind="kendoGrid: gridOptions, allowBindings: false "
style="height: 500px">
</div>
위의 applyBindings 호출 전에 ko.cleanNode도 호출해야했습니다. 따라서 데이터 바인딩 기능은 다음과 같습니다.
self.dataBound = function (e){
var body = e.sender.element.find("tbody")[0];
if (body) {
ko.cleanNode(body);
ko.applyBindings(ko.dataFor(body), body);
}
};
업데이트 된 내용은 입니다.
이 녹아웃의 버전 2.2 jsfiddle 정말 잘 작동하지만 녹아웃의 버전 3.2을 실행하는 내 응용 프로그램으로 당겨 때, 나는 "이 같은 요소에 바인딩을 여러 번 적용 할 수 없습니다"라는 에러 . 나는 3.2가 나에게 바이올린에 문제를주고 있기 때문에 녹아웃을 위해 2.2를 연결했다. 나는 녹아웃 3.2에 직면하고있는 것의 예를 얻기 위해 Telerik dojo에 가야만했다. http://dojo.telerik.com/Ikil 제안 사항이 있으십니까? 하루 종일 이걸 알아 내려고 노력 했어. – Icestorm0141
해결책을 찾았습니다. 위의 databound 함수 위에 하위 바인딩을 사용하지 않도록 사용자 지정 바인딩 처리기를 추가해야했습니다. 이 속성을 검도 그리드 div에 추가했습니다. 위 applyBindings 호출 전에 ko.cleanNode를 호출해야했습니다. 업데이트 된 Telerik Dojo를 참조하십시오. http://dojo.telerik.com/Ikil/2 – Icestorm0141
정말 잘 알려드립니다. 업데이트 해 주셔서 감사 드리며 기꺼이 처리해 드리겠습니다. –