Javascript 剑道ui网格查询参数
我正在使用KendoUIGrid进行服务器端分页、过滤和排序。在C#WebAPI中,所有网格参数(如过滤器、排序、currentpage和页面大小)都由kendo grid API在url中发送,我的WebAPI中有DataSourceRequest,它可以读取所有查询参数并应用它们,同时我从API返回数据 我有一个具体的情况。我有一个导出链接,在其中我需要使用$http服务来调用我与所有过滤器和排序一起使用的API,这些过滤器和排序应用于网格并返回所有记录 我拥有网格的所有属性,比如过滤器和排序 我可以从kendogrid的数据源访问它Javascript 剑道ui网格查询参数,javascript,angularjs,asp.net-web-api,kendo-grid,kendo-datasource,Javascript,Angularjs,Asp.net Web Api,Kendo Grid,Kendo Datasource,我正在使用KendoUIGrid进行服务器端分页、过滤和排序。在C#WebAPI中,所有网格参数(如过滤器、排序、currentpage和页面大小)都由kendo grid API在url中发送,我的WebAPI中有DataSourceRequest,它可以读取所有查询参数并应用它们,同时我从API返回数据 我有一个具体的情况。我有一个导出链接,在其中我需要使用$http服务来调用我与所有过滤器和排序一起使用的API,这些过滤器和排序应用于网格并返回所有记录 我拥有网格的所有属性,比如过滤器和排
var query = {
page: 1,
pageSize: grid.dataSource.total(),
sort: grid.dataSource.sort(),
filter: grid.dataSource.filter()
}
我需要通过应用所有过滤器和排序来调用用于呈现kendogrid的相同API。有谁能帮助我,剑道网格是如何用所有这些参数生成查询字符串的。所以可能我可以重复使用相同的功能
?filter=stepType~eq~%27拒绝%27&sort=&aggregate=&pageSize=10&page=2&isFirstLoad=false&showColumns=name%2CtotalScore%2Crank%2CexpirationDate%2CstepName%2C&&uu=1450310137369
谁能帮助我在哪里找到一个函数来生成所有查询参数,包括从网格中检索到的过滤器、分页和排序值。我以前使用angular使用parameterMap实现了这一点,但我想如果只使用jQuery,情况会非常相似。看这个 使用parameterMap的代码片段
$scope.pageableData = new kendo.data.DataSource({
type: "aspnetmvc-ajax",
pageSize: $scope.pageSize,
serverPaging: true,
serverFiltering: true,
serverSorting: true,
transport: {
read: {
url: $rootScope.projectURL + '/api/DocLibItems/PageableGridItems',
dataType: 'json',
type: 'post'
},
parameterMap: function (data, type) {
$scope.pageableGridCreateCache = false;
var filter = data.filter === undefined ? null : data.filter;
if (filter) {
angular.forEach(filter.filters, function (item) {
item._operator = item.operator;
});
}
return {
ProjectID: $scope.projectID,
PageNumber: data.page,
PageSize: data.pageSize,
Sorting: data.sort === undefined ? null : data.sort,
Filtering: filter
};
}
}
});
ParmeterMap返回ProjectID、PageNumber、PageSize、排序和筛选。api应该期望接收该数据并基于该数据返回数据
初始调用将调用相同的api,其中pageNumber将为1,pageSize将为默认pageSize,排序将为null,并且不会进行筛选
对api的调用是post,因此url中不会有任何参数。非常感谢。我没想到改造params这么容易。