Определить выбранный элемент и текущую страницу Telerik MVC Grid - на стороне клиента - PullRequest
0 голосов
/ 17 октября 2011

Я использую сетку Telerik MVC с привязкой данных Ajax .

Я хотел бы сделать 2 вещи с сеткой Telerik MVC:

  1. Когда строка выбрана, определите (на стороне клиента), на какой странице в данный момент находится сетка, а также какая строка была выбрана.
  2. При следующей загрузке сетки (используя ajax ... Я никогда не покидаю страницу), вернитесь на ту же страницу, чтобы показать последний выбор.(Наверное, я просто спрашиваю, есть ли способ сразу перейти на страницу сетки после загрузки данных, а не на страницу 1)

Пожалуйста, имейте в виду, я знаю,событий на стороне клиента уже.Я хотел бы знать, как сделать # 1 из события, и # 2 или со стороны клиента или программно как-то.

Редактировать / Подробнее: Я думаю, я знаю, что мне нужноделать здесь.Поскольку я использую Ajax-загрузку здесь, Ajax POST вызывается где-то в коде Telerik.Я вижу, что во время этого Ajax POST они посылают параметр "page" в контроллер.Если бы я мог как-то отредактировать это, я уверен, что это сработало бы - но у меня возникли проблемы при изменении этого параметра.

Заранее спасибо!

1 Ответ

0 голосов
/ 21 октября 2011

Ради кого-то еще, ищущего это, я понял это:

Получение текущей страницы сетки: Для этого я использую jQuery, чтобы определить, какой номер имеет «выбранный» стиль (t-state-active) для определения номера текущей страницы. Пример (мой идентификатор сетки: 'case-grid'):

function getCurrentGridPage() {
        ///<summary>Gets the current page of the #cases-grid</summary>
        var page = $('#cases-grid .t-state-active');
        if (page.length == 0) {
            return 1; //default to page 1 when unknown
        }
        return page.text();
    }

Вторая часть моего вопроса была на самом деле хорошо задокументирована на сайте Telerik ... Я просто пропустил его на некоторое время. Чтобы загрузить сетку на определенную страницу (кроме 1), я добавил в свою таблицу следующее:

.Pageable(pager => pager.PageTo(@Model.InitialPage))

И добавил свойство InitialPage в мою модель.

...