2011-02-04 3 views
4

Telerik MVCグリッドajaxバインディングを使用してレコードを表示しています。 グリッドがロードされている間、グリッド内のメッセージは「レコードが見つかりません」です。 ajax calが完了すると、メッセージが表示され、データがロードされます。 しかし、データが読み込まれるまで、このレコードには「レコードが見つかりません」というメッセージが表示されます。Telerik MVCグリッド - ajaxの間で "no record message"を変更する方法

このメッセージを「読み込み中...」と変更する方法を教えてもらえますか?

ありがとうございました。

答えて

1

代わりNoRecordsTemplateを使用しての、私は次のことをお勧め:

  1. あなたのグリッドにclienteventを追加します。.ClientEvents(イベント=> events.OnLoad( "Grid_onLoad"))
  2. 追加javacript関数: function Grid_onLoad(e){ $( '。t-no-data td')。テキスト( 'Loading'); }

そのようにレコードがない場合、グリッドはまだ「レコードが見つかりません」と表示されますが、ユーザーはAJAX呼び出しの際に「ロード」のメッセージが表示されます。

7

グリッドでt-no-dataクラスを検索します。

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

のようなものは、グリッドに ".NoRecordsTemplate( "ロードを...")" の追加、IMOあなたのグリッドのonLoad()

3

に行く必要がありますより良いアプローチです。

  @(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

-1 - あなたはNoRecordsTemplateを使用している場合は表示するレコードがないならば、ユーザーが「読み込み中...」のメッセージが表示されます。 –

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"); 
} 
関連する問題