每个面板栏项目操作都会重新加载Telerik MVC面板栏

时间:2018-10-01 13:05:29

标签: kendo-ui telerik telerik-mvc kendo-panelbar

我将Telerik MVC面板栏用作应用程序的侧面菜单栏。我指的是此链接Demo

我确实将我的模型绑定(本地数据绑定)到面板栏,效果很好。我的问题是如何使面板栏Item.Action(“ Action”,“ Controller”)成为AJAX调用。因为每次我单击菜单时,页面都会重新加载。

我无法在Telerik MVC部分找到任何解决方案。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

您可以定义数据源的URL。

  

此示例来自Telerik文档。

查看

@(Html.Kendo().PanelBar()
    .Name("panelbar")
    .DataTextField("Name")
    .DataSource(dataSource => dataSource
        .Read(read => read
            .Action("GetEmployeesJson", "Controller")
        )
    )
)

控制器中的操作

 public JsonResult GetEmployeesJson(int? id)
    {
        var dataContext = new SampleEntities();

        var employees = from e in dataContext.Employees
                        where (id.HasValue ? e.ReportsTo == id : e.ReportsTo == null)
                        select new
                        {
                            id = e.EmployeeID,
                            Name = e.FirstName + " " + e.LastName,
                            hasChildren = e.Employees1.Any()
                        };

        return Json(employees, JsonRequestBehavior.AllowGet);
    }