2014-03-05 3 views
4

DataSource 객체 (Kendo UI 프레임 워크에 속함)가 서버에서 데이터를 읽을 때 서버 측에서 DataSourceRequest라고하는 구조로 매개 변수를 전송합니다 (공식적으로는 이러한 클래스가 없지만). DataSource (및이를 사용하는 Grid)에서 실제 읽기를 수행하지 않고 어딘가에 보내려고하기 때문에 DataSource에서이 객체를 가져 오는 방법을 찾고 있습니다. 가능한가? telelrik 포럼에서이 스레드를 발견 : http://www.telerik.com/forums/passing-current-datasourcerequest-to-a-custom-command 제안 된 솔루션은 나를 위해 좋은 없습니다.KendoUI DataSource 객체에서 DataSourceRequest를 가져올 수 있습니까?

나는 어떤 조언에 대한 감사합니다 :)

답변

6

EdsonF's 대답은 잘했지만이 방법은 더 나은 조금 :

var data = grid.dataSource._params(); 
var prepared = grid.dataSource.transport.parameterMap(data); 
location.href = "/MyController/MyDataEndPint?"+prepared;  

here

에서 촬영
0

같은 클래스입니다. Kendo.Mvc.UI를 사용하여 추가해야합니다. aspnetmvc.min.js 파일을 추가하고 MVC 랩퍼를 사용하는 경우 해당 특정 형식으로 서버에 전송됩니다.

2

당신은 그것을 다음과 같은 방법으로 수행 할 수 있습니다

참고 :이 아약스 방법은 아니다 - 당신이 날

ExportData = function() { 

     var grid = $("#myGrid").data("kendoGrid"); 
     var parameterMap = grid.dataSource.transport.parameterMap; 
     var sortData = grid.dataSource.sort(); 
     var filterData = grid.dataSource.filter(); 
     var groupData = grid.dataSource.group();   
     var data = parameterMap({ sort: sortData, filter: filterData, group: groupData }); 
     var request = decodeURIComponent($.param(data)); 
     location.href = "/MyController/MyDataEndPint?"+request;     
     return false; 
    } 

그것을 알려 아약스 방법이 필요하면 이후 오랜만했습니다 질문이 제기되었지만 잘하면 다른 사람들을 도울 것입니다.

감사

에드 슨은

관련 문제