2017-04-20 2 views
1

를 업데이트하지 Get ajax Get을 통해 채워집니다.

현재 내 위치가 관찰 가능한 배열을 새로 고치고 새 데이터를 눈금에 다시 바인딩 할 때 열 필터에서 데이터를 제대로 새로 고쳐 내지 않는 것이 문제입니다. 내 필터에 이전 위치 데이터가 계속 표시됩니다.

어떤 도움말 ???

검도 UI DOJO 예 : 데이터 소스 객체에 필터를 삭제 http://dojo.telerik.com/oVOsi/31

답변

-1

그리드 소스에 query 호출 및 데이터 소스에 대한 다른 속성을 리셋/필터를 삭제 나를 위해 작동합니다 (필터가 있는지 확인하기위한 추가 검사가 필요함). 같은 : 가 지금은 정확한 요구 사항을 이해

var grid = $("#grid").data("kendoGrid"); 
var gridDataSource = grid.dataSource; 
var filter = gridDataSource.filter(); 
if (filter) { 
    gridDataSource.query({ filter: {}, pageSize: 10, page: 1 }); 
} 

편집, 각 버튼 클릭 (그래서 열 필터가 데이터에 따라 다시 작성)에 그리드를 재 구축 할 수 있습니다.

Dojo example of rebuilding grid

+0

죄송하지만 저에게 도움이되지 않습니다. 필터가 올바른 데이터를 바인딩하는 도장을 보내 주시겠습니까? Tks –

+0

@ezanker와 내가 보낸 예제는'myOtherBtn'이 클릭되었을 때'grid'에 적용된 필터를 성공적으로 지울 것입니다. 그러나, 당신이 찾고있는 (나는) 새로운 칼럼 데이터를 포함하는 열에 적용된 새로운 필터로 그리드 열을 다시 작성하는 것입니다 생각하십니까? 이 경우 필터에 관련 데이터가 포함되도록 그리드 자체를 다시 작성해야 할 수 있습니다. – Sandman

+0

내 대답을 업데이트하고 당신을 위해 도장 예제를 제공했습니다. – Sandman

-1

보십시오

$('#myOtherBtn').click(function(){ 
    var grid = $("#grid").getKendoGrid();  
    grid.dataSource.data(products2); 
    grid.dataSource.filter({}); 
    grid.refresh(); 
    grid.sync(); 
}); 
+0

덕분에,하지만 난 그 옵션하지만 기쁨 전에 시도했다! –

+0

@RicardoCoelho, 내가 이것을 당신의 DOJO에 추가했는데 효과가있었습니다 ... – ezanker

+0

내가 빠진 것을 확인할 수 있습니까? http://dojo.telerik.com/oVOsi/85 –

0

내가 잘 작동이 솔루션을 발견 : 나는 함께 도장 예를 뒀다

var grid = $("#grid").data("kendoGrid"); 
    grid.setDataSource(grid.dataSource); 
    grid.dataSource.read(); 

트릭은 ") (setDataSource"방법을 사용하는 것입니다, 그것은 재설정을 모든 필터.

http://dojo.telerik.com/oVOsi/103