#javascript #jqgrid
#javascript #jqgrid
Вопрос:
Мы разрабатываем приложение на javascript. Это приложение будет использовать jqGrid для целей визуализации сетки. У нас есть javascript «API», который предоставляет функциональность для ввода данных с сервера.
API предоставляет данные в формате JSON, эти данные содержат такую информацию, как: {Итоговые результаты, номер страницы, nrRecords, фактический массив строк}
Теперь нам нужно заполнить jqGrid с помощью этого API. Итак, мы не будем использовать url
свойство сетки. Мы также хотим, чтобы разбивка на страницы / поиск работали с использованием доступного API. Этот API имеет функции, которые принимают параметры поиска в качестве аргумента и возвращают данные с сервера после применения параметров поиска.
Какое бы исследование мы ни проводили в jqGrid, мы не смогли найти способ интегрировать этот API с jqGrid. Мы пытались делать это до сих пор:
$('#grid').jqGrid({
data: this.gridData, // Initial data returned by the API in JSON format, suppose 5 rows
datatype: "local",
colNames:['Id', 'Name'],
colModel:[ {name:'id', index:'id', width:20},
{name:'firstName', index:'firstName', width:80},
]
onPaging: function (pgButton) {
// Use the API to get the next page data and populate the jqGrid
}
rowNum: this.gridData.length,
rowTotal: this.getTotalGridLength, // This part is not working!!
)};
В приведенном выше примере мы получаем сетку только с 5 строками, а кнопка next не активна. Как нам установить общее количество строк (this.getTotalGridLength ), чтобы, когда пользователь нажимает next, мы получали новые данные в onPaging
функции и соответствующим образом заменяли сетку?
Это первое препятствие, нам также нужно заставить поиск / фильтрацию работать с использованием того же API.
Комментарии:
1. Было бы полезно, если бы вы более точно описали JavaScript API, который вы хотите использовать, особенно если API работает асинхронно. Как выглядит API для получения i-й страницы данных, предварительно отсортированных по DESC или ASC по имени некоторого столбца? Поддерживает ли ваш сервер подкачку данных? Предоставляет ли сервер результаты в формате JSON или XML?
2. Обновили вопрос с требуемыми подробностями. Да, API поддерживает получение n-й страницы. Просто нужно передать ему параметры.