2015-01-02 8 views
0

JSR 데이터를 Pusher를 통해 Kendo Grid가있는 간단한 MVC5 웹 사이트로 이동 시켰습니다. 도착시 데이터는 그리드에서 성공적으로 렌더링되지만, 매번 데이터 소스를 만들고 설정합니다. 이것은 죄가있는 것처럼 보이기 때문에 단순히 데이터 소스를 업데이트하는 방식으로 데이터를 렌더링하지 않는 이유를 확인하려고합니다. Kendo Grid 데이터 소스 업데이트 방식이 작동하지 않습니다.

그리드 : 내가 가지고있는

var array = JSON.parse(data.updateGrid); 
    var grid = jQuery("#dashboard").data("kendoGrid"); 
    grid.dataSource.data = array; 
    grid.dataSource.read(array);    
    grid.refresh(); 

: 내이 (일어날 않는 함수 호출의 몸) 새로운 데이터 소스를 만들고 바인딩없이 데이터를 읽을 수있는 시도가 실패

<div id="dashboard"></div> 
<script> 
    $(document).ready(function() { 
     $("#dashboard").kendoGrid({ 
      columns: [ 
       { field: "SystemName", width: "50px", title: "System" }, 
       { field: "Description", width: "100px", title: "Description" }, 
       { field: "SystemStatus", width: "30px", title: "Status" } 
      ], 
      height: 600, 
      scrollable: true, 
      sortable: true, 
     }); 
     var dataSource = new kendo.data.DataSource(); 
     var grid = jQuery("#dashboard").data("kendoGrid"); 
     grid.setDataSource(dataSource); 
    }) 
</script> 

데이터가 Pusher로부터 올바르게 도착했음을 확인했지만 위의 방법으로는 그리드를 업데이트하지 않습니다.

미리 감사드립니다. DataSource에에

대표부

답변

2

사용 데이터() 메소드는 데이터의 설정합니다.

var array = JSON.parse(data.updateGrid); 
var grid = jQuery("#dashboard").data("kendoGrid"); 
grid.dataSource.data(array);    

소스가 XML 유형 인 경우에만 dataSource에서 데이터의 문자열 값을 설정할 수 있습니다. JSON을 사용 중이므로 데이터 함수를 호출하고 새 데이터를 전달해야합니다.

설명서 참조 ... http://docs.telerik.com/kendo-ui/api/javascript/data/datasource#methods-data

관련 문제