Можно ли программно установить параметр сортировки источника данных KendoUI перед чтением данных и избежать второго чтения сервера? Область определяет настройку по умолчанию для определенного взаимодействия с пользователем. Как?
Вот пример того, что я пытаюсь сделать, потому что ответы не доходят до сути (или, может быть, я не понимаю, как все работает).
Я определяю источник данных Kendo с исходным типом:
var datasource = new kendo.data.DataSource({
parameterMap: function (inputParams, operation) {
return JSON.stringify(inputParams)
},
// default sort
sort: [
{field: "field_1", dir: "asc"},
{field: "field_2", dir: "asc"}
]
});
Этот DataSource привязан к сетке Kendo:
var grid = $("element").kendoGrid({
dataSource: datasource
});
Затем у меня есть кнопка, которая вызывает "чтение" в DataSource и заполняет сетку первой страницей данных:
$("#btn").bind("click", function(e) {
datasource.page(1);
});
Таким образом, после нажатия кнопки пользователь получает данные, упорядоченные по "field_1" и "field_2", и сетка показывает этот вид в заголовках столбцов. Затем пользователь может изменить порядок данных, нажав на заголовок столбца.
То, что я хотел бы сделать, это reset сортировка по умолчанию исходной, как определено в объявлении DataSource, показывая ее снова в заголовках столбцов и не создавая новый DataSource снова.
Что-то вроде:
$("#btn").bind("click", function(e) {
datasource.sort = [
{field: "field_1", dir: "asc"},
{field: "field_2", dir: "asc"}
];
datasource.page(1);
});
Предлагаемые решения, похоже, не доходят до сути (и, тем не менее, я не понимаю, почему я теряю точки репутации для законного вопроса, который, кажется, не настолько тривиален и должен быть рассмотрен в рамках).
Пожалуйста, покажите мне, что я ошибаюсь (я не беспокоюсь о потере репутации - я хотел бы просто понять, как решить проблему). Спасибо!