Как перезагрузить или обновить Kendo Grid, используя Javascript?
Часто требуется перезагрузить или обновить сетку через некоторое время или после действия пользователя.
kendo-ui
kendo-grid
Oxon
источник
источник
read
запросит сервер и перезагрузит только перезагрузку источника данных. Там не будет никаких изменений в пользовательском интерфейсе.refresh
будет повторно визуализировать элементы в сетке из текущего источника данных. Вот почему оба требуются.Я никогда не освежаю.
один работает на меня все время.
источник
источник
В недавнем проекте мне приходилось обновлять сетку интерфейса пользователя Kendo на основе некоторых вызовов, которые происходили при некоторых выпадающих списках. Вот что я в итоге использовал:
Надеюсь, это сэкономит вам время.
источник
Ни один из этих ответов не дает факта, который
read
возвращает обещание, что означает, что вы можете подождать загрузки данных, прежде чем вызывать обновление.В этом нет необходимости, если захват данных происходит мгновенно / синхронно, но, скорее всего, он поступает с конечной точки, которая не вернется немедленно.
источник
Если вы не хотите иметь ссылку на сетку в обработчике, вы можете использовать этот код:
Это обновит сетку, если есть кнопка обновления. Кнопка может быть включена следующим образом:
источник
На самом деле они разные:
$('#GridName').data('kendoGrid').dataSource.read()
обновляетuid
атрибуты строки таблицы$('#GridName').data('kendoGrid').refresh()
оставляет тот же UIDисточник
Что вам нужно сделать, это просто добавить событие .Events (events => events.Sync ("KendoGridRefresh")) в свой код привязки kendoGrid. Нет необходимости писать код обновления в результате ajax.
И вы можете добавить следующую Глобальную функцию в любой ваш файл .js. Таким образом, вы можете вызвать его для всех сеток кендо в вашем проекте, чтобы обновить kendoGrid.
источник
В моем случае у меня был собственный URL-адрес, на который нужно переходить каждый раз; хотя схема результата останется прежней.
Я использовал следующее:
источник
Вы можете использовать следующие строки
Для функции автоматического обновления посмотрите здесь
источник
Используя следующий код, он автоматически вызывает метод чтения сетки и снова заполняет сетку.
источник
Альтернативный способ перезагрузить сетку
источник
Вы всегда можете использовать
$('#GridName').data('kendoGrid').dataSource.read();
. Тебе не нужно.refresh();
после этого.dataSource.read();
делать свое дело.Теперь, если вы хотите обновить свою сетку более угловатым способом, вы можете сделать:
ИЛИ
И не забудьте объявить ваш источник данных как
kendo.data.DataSource
типисточник
Я использовал Jquery .ajax для получения данных. Чтобы перезагрузить данные в текущую сетку, мне нужно сделать следующее:
источник
Я хочу вернуться на страницу 1, когда обновлю сетку. Просто вызов функции read () сохранит вас на текущей странице, даже если в новых результатах не так много страниц. Вызов .page (1) в источнике данных обновит источник данных И вернется на страницу 1, но завершится неудачно в сетках, которые не являются доступными для страниц. Эта функция обрабатывает оба:
источник
Чтобы выполнить полное обновление, где сетка будет перерисована вместе с новым запросом на чтение, вы можете сделать следующее:
Где собственность может быть любой собственностью, например, сортируемой
источник
Просто напишите ниже код
источник
источник
Вы можете попробовать:
источник
Если вы хотите, чтобы сетка автоматически обновлялась по времени, вы можете использовать следующий пример с интервалом 30 секунд:
источник
По умолчанию / обновленная конфигурация / данные виджетов настроены на автоматическую привязку к связанному источнику данных.
источник
refresh
Вы также можете обновить свою сетку, отправив новые параметры в действие «Чтение» и установив нужные страницы:
В этом примере действие чтения сетки вызывается значением 2 параметров, и после получения результата разбиение сетки происходит на странице 1.
источник
Самый простой выход для обновления - использовать функцию refresh (). Который идет как:
в то время как вы также можете обновить источник данных с помощью этой команды:
Последний фактически перезагружает источник данных сетки. Использование обоих может быть сделано в соответствии с вашими потребностями и требованиями.
источник
источник
dataSource.read()