Я использую AlloyUI для отображения таблицы с нумерацией страниц + сортировкой данных. Проблема: Данные сортируются ТОЛЬКО на текущей странице. Вместо этого я хочу сортировать все данные каждый раз, когда я нажимаю на столбец, и я хочу, чтобы пользователь возвращался на первую страницу.
Как работает мой код: я делю свою большую таблицу на маленькие и связываю каждую таблицу со страницей.
Вот мой код:
YUI().use('aui-datatable', 'aui-pagination', 'datatable-sort', function (Y)
{
dataPages = [{ .... }, { ... }, ... , { ... }]; => contains 18 rows
var columns = [
{ key: 'Tel', label: 'Tel', sortable: true },
...
{ key: 'Register', label: 'Register', sortable: true }
];
var dataTable = new Y.DataTable(
{ columns: columns, data: dataPages}
).render('#DataTableConsult');
new Y.Pagination(
{contentBox: '#pagination .aui-pagination-content', page: 1,
on: { changeRequest: function (event) {
var dataPageOne = new Array(); ... i fill in this first table with lines N° 0 to 6 of dataPages table
var dataPageTwo = new Array(); ... i fill in this first table with lines N° 7 to 13 of dataPages table
var dataPageThree = new Array(); ... i fill in this first table with lines N° 14 to 17 of dataPages table
if (event.state.page === 1) { dataTable.set('data', dataPageOne); }
else if (event.state.page === 2) { dataTable.set('data', dataPageTwo); }
else if (event.state.page === 3) { dataTable.set('data', dataPageThree); }}}}).render();
});