How to refresh the Kendo UI grid

耗尽温柔 提交于 2019-12-04 16:32:51

问题


I am trying to refresh a Kendo UI grid but have not yet been successful. Would anybody please advise what I missed or what I did wrong?

I have the following code:

.cshtml:

 $('#btnRefresh').click(function (e){

            $.ajax({
                type: 'POST',
                url: "@(Url.Content("~/Administration/RefreshAll/"))",

                success: function () {
                    $("#Product").data("kendoGrid").dataSource.read();
                    $('#Product').data('kendoGrid').refresh();
                    //grid.refresh();
                    location.reload(true);
                },
                error: function (){
                    $("#btnRefresh").removeAttr('disabled');
                }
            });


      });

Controller:

public ActionResult RefreshAll([DataSourceRequest] DataSourceRequest request)
        {
            db.ProcessAll();
            Response.Cache.SetCacheability(HttpCacheability.NoCache);
            return View();
        }

回答1:


your script should be

$('#btnRefresh').click(function (e){
        var grid = $("#Product").data("kendoGrid");
               grid.dataSource.page(1);
               grid.dataSource.read();
      });

in your controller add references to

  • using Kendo.Mvc.UI;
  • using Kendo.Mvc.Extensions;

your ActionResult should be

public ActionResult RefreshAll([DataSourceRequest] DataSourceRequest request)
        {
            //assuming db.ProcessAll() will return a list object
            return Json(db.ProcessAll().ToDataSourceResult(request));
        }


来源:https://stackoverflow.com/questions/16471046/how-to-refresh-the-kendo-ui-grid

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!