Я использую сетку, которая выглядит так:
Html.Telerik().Grid(Model).Name("preciousGrid").
... bla bla bla..
.ClientEvents(events => events.OnDataBinding("onDataBinding"))
.Columns(columns =>
{
columns.Bound(o => o.Date);
columns.Bound(o => o.Name);
Да, я полностью игнорирую .DataBinding
материал для использования пользовательского вызова ajax. Почему? Мне нужно отправить на сервер больше данных, а не простой идентификатор. И единственный способ собрать эти данные — пройтись по элементам DOM. Так что ни один из предложенных Телериком способов в моем случае не сработал.
Все работает - в onDataBinding после того, как необходимые данные собраны и отправлены на сервер, сервер возвращает результаты, сетка отображает эти данные.
Но все же есть проблема. Пейджинг не работает. И нижний колонтитул показывает что-то вроде этого:
Любые идеи?
UPD: О... может, стоит отправить на сервер пейджинговую информацию и на ее основе вернуть результаты? Как это сделать? Можете ли вы показать мне образец?
UPD2: Команда GridCommand не отправляет информацию о пейджинге на сервер по умолчанию (если я опустил ее в $.ajax и по-прежнему помещал параметр GridCommand в метод действия, он что-то отправлял контроллеру, но PageSize всегда равен 10 (по умолчанию значение), а страница всегда равна 1. Так что я думаю, что мне нужно жестко запрограммировать эти значения в $.ajax.Но я не знаю, как я могу получить значения PageSize и Page на клиенте?