Telerik MVC网格 - 如何更改ajax调用之间的“无记录消息”

时间:2011-02-04 11:25:13

标签: telerik-mvc

我正在使用Telerik MVC网格ajax绑定来显示一些记录。 加载网格时,网格中的消息为“未找到记录”。 当ajax cal完成后,消息将继续并加载数据。 但是,在加载数据之前,“没有找到记录”的消息让用户感到困惑。

任何人都可以告诉我如何将此消息更改为“正在加载...”,直到ajax cal完成。

感谢。

4 个答案:

答案 0 :(得分:7)

在网格中搜索t-no-data类。像

这样的东西
$('#ReportGrid').find('.t-no-data td').text('Loading...');

应该放在你的网格onLoad()

答案 1 :(得分:3)

IMO,将“.NoRecordsTemplate(”Loading ...“)添加到网格是更好的方法。

            @(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...")
            )

答案 2 :(得分:1)

我建议不要使用NoRecordsTemplate:

  1. 为您的网格添加clientevent:.ClientEvents(events =&gt; events.OnLoad(&#34; Grid_onLoad&#34;))
  2. 添加javascript函数: function Grid_onLoad(e){     $(&#39; .t-no-data td&#39;)。text(&#39;正在加载&#39;);   }
  3. 这样,如果没有记录,网格仍会显示&#34;没有找到记录&#34;但是用户将看到&#34;正在加载&#34; ajax调用期间的消息。

答案 3 :(得分:0)

您可以使用 .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");
}