Как перезагрузить сетку кендо с отфильтрованными данными? - PullRequest
1 голос
/ 13 февраля 2020

У меня есть сетка кендо, в которой я выбрал фильтр для одного столбца, я перезагружаю сетку, я хочу, чтобы тот же фильтр присутствовал при перезагрузке сетки.

Я использую приведенный ниже код для перезагрузите сетку. Это работает, но не показывает выбранный элемент фильтра отмечен. Я проверил IDR в фильтре, затем перезагрузил страницу, она показывает 1 выбранный элемент, но не показывает IDR как проверено.

function ReloadGrid() {
    var grid = $('#gridId').data('kendoGrid');
    grid.dataSource.read();
    grid.setDataSource(grid.dataSource);
}

enter image description here

1 Ответ

0 голосов
/ 22 февраля 2020

Ну, есть два способа сделать это.

Один из способов - сохранить фильтры в базе данных, а второй - использовать локальное хранилище, как указано в комментарии.

Я предпочитаю второй, используя локальное хранилище для сохранения фильтров и загрузки их при чтении.

@ GaloisGirl указывает вам правильное направление.

Проверьте этот пример еще раз: Сохранение состояния

Basi c использование языкового хранилища для сохранения некоторых данных под некоторым именем (ключом, значением):

    let person = {
        name: 'foo',
        lastName: 'bar'
    };

    let save = function (person) {
        let personString = JSON.stringify(person);
        localStorage.setItem('person', personString);
        console.log('Storing person: ', personString);

    };

    let load = function () {
        let personString = localStorage.getItem('person'); // <----string
        let person = JSON.parse(personString); // <----object
        console.log('Stored person: ', person);
    };

    let remove = function (name) {
        localStorage.removeItem(name);
        console.log('Removed from local storage!');
    };

    save(person);
    load();
    remove(person.name);

В мире кендо вам необходимо сохранить текущее состояние параметров сетки в локальном хранилище. это можно сделать, добавив кнопку, как в примере, или «на лету» с изменением или с помощью window.onbeforeunload или как в вашем примере перед перезагрузкой сетки.

Вы можете проверить сохраненные данные на вкладке приложения в браузерах, например. chrome: enter image description here

Надеюсь, это поможет, gl!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...