Сервер возвращает 15 записей на страницу, а общее количество записей превышает 2000. Я хотел бы отображать первые 15 записей, а затем на каждом нажатии кнопки «Далее» отображать оставшиеся все записи , (15 на страницу). Для этого мы делаем разбиение на страницы на стороне сервера или на стороне клиента ???Ссылка на серверную страницу с использованием данных
Вот мой стол и атрибуты им помощь для пагинации в DataTables:
var tableData = self.accountCollection.getData();
var tableColumns = this.accountCollection.getColumns();
var totalRecs = this.accountCollection.length;
//create the UI grid containing the list of items
this.resultsTable = tableEl.dataTable({
"bServerSide": true,
"sEcho": 3,
"iTotalRecords": totalRecs,
"iTotalDisplayRecords": 15,
"aaData": tableData,
"aoColumns": tableColumns,
"aaSorting": [[1,'asc']],
});
getData: function() {
var returnData = [];
$.each(this.models, function (idx, accountModel) {
returnData.push(accountModel.attributes);
});
return returnData;
},
returnData
вернет мне объект, который имеет поле я будет населяющие ıA таблицы: Объекта перенастроена: (примерно)
Object
accountName: "No Company"
address1: "1234 asdf"
address2: ""
billingAcctId: null
billingSystem: null
city: "mountain view"
comments: null
country: "USA"
GetData() функция будет затем призвана RETUEN данных из datatbase с помощью:
var tableData = this.accountCollection.getData()
поэтому в основном tableData будет иметь необходимые поля и значения для отображения в таблице. Теперь у меня может быть более 1000 записей, возвращенных с сервера. Поэтому мне нужна разбивка на страницы. Один в скрипке - это то, что я пробовал и не оказывает никакого влияния на paginatin .. :(
Я думаю, что у меня есть базовое разбиение на страницы, которое поставляется с данными, но теперь мне нужно иметь серверную сторону, чтобы получать только 15 записей для отображения одновременно, а при нажатии кнопки «Следующий» и «предыдущий» я должен иметь возможность делать ajax-звонки, чтобы получить оставшиеся записи 15 на страницу ...
Надеюсь, это поможет вам лучше понять. Пожалуйста, дайте мне знать, если вам нужна дополнительная информация.
Как я могу достичь разбивки на страницы с использованием данных? Пожалуйста, дайте мне знать при необходимости подробнее ..
Благодаря
хорошо, «self.accountCollection» является извлечение списка пользователей с сервера: что-то вроде ниже .. this.accountCollection = новые ipiadmin.collections.AccountCollection(); все еще имеет смысл сделать звонок на стороне клиента ..? – user1234
вы можете переопределить self.accountCollection, чтобы включить детализирование деталей в JSON, которые он извлекает. В принципе, вы хотите, чтобы ваш JSON выглядел примерно так: {«sEcho»: 15, «iTotalRecords»: 2000, «iTotalDisplayRecords»: 2000, «aaData»: [ваши первые 15 строк данных]}, затем используйте self.accountCollection as источник ajax в вашем исходном файле. Также интересно, какой у вас стек (клиент и сервер)? –
есть ли способ, которым вы могли бы предоставить пример ... Спасибо за помощь! – user1234