Telerik MVC grid-Как изменить «нет записи сообщения» между ajax - PullRequest
4 голосов
/ 04 февраля 2011

Я использую привязку ajax к сетке Telerik MVC, чтобы показать некоторые записи. Пока сетка загружена, сообщение в сетке: «Записи не найдены». Когда ajax cal завершен, сообщение отправляется и данные загружаются. Но это сообщение «Записи не найдены» до загрузки данных сбивает с толку пользователя.

Может кто-нибудь сказать мне, как изменить это сообщение как "Загрузка ...", пока не завершится ajax cal.

Спасибо.

Ответы [ 4 ]

7 голосов
/ 04 марта 2011

Выполните поиск класса t-no-data в вашей сетке. Что-то вроде

$('#ReportGrid').find('.t-no-data td').text('Loading...');

должно войти в сетку onLoad()

3 голосов
/ 17 октября 2011

IMO, добавление ".NoRecordsTemplate (" Загрузка ... ")" к сетке - лучший подход.

            @(Html.Telerik().Grid<RatingListItem>()
            .Name("Rating_Index_List")
            .Columns(columns =>
            {
                columns.Bound(o => o.Id).Hidden();
                columns.Bound(o => o.Score)
            })
            .DataBinding(dataBinding => dataBinding.Ajax().Select(Model.ListPageGridModel.DataRequestAction.ActionName, Model.ListPageGridModel.DataRequestAction.ControllerName))
            .Pageable(settings => settings.Total(Model.ListPageGridModel.TotalRow))
            .EnableCustomBinding(true)
            .Sortable()
            .NoRecordsTemplate("Loading...")
            )
1 голос
/ 24 января 2012

Вместо использования NoRecordsTemplate я предлагаю следующее:

  1. Добавить клиентское событие в вашу сетку:
  2. Добавить функцию JavaScript: function Grid_onLoad (e) { $ ('. t-no-data td'). text ('Загрузка'); }

Таким образом, если нет записей, сетка все равно будет отображать «Записи не найдены», но пользователь увидит сообщение «Загрузка» во время вызова ajax.

0 голосов
/ 07 февраля 2013

Можно использовать .NoRecordsTemplate для времени загрузки с событием OnDataBound, чтобы указать, когда нет записей.

  @Html.Telerik().Grid<ViewModel>().Name("Temp")
  .NoRecordsTemplate("Loading ... Please Wait")
  .ClientEvents(e => e.OnDataBound("onDataBound"))

Код сценария

function onDataBound() {
    $("tr.t-no-data td").html("No records to display");
}
...