首页 文章

Ajax无法从网格的初始加载,模板和ClientTemplates中工作

提问于
浏览
1

我有以下代码:

@using com.mycompany.myproject.web.ViewModels
@model IEnumerable

@{ Html.Telerik().Grid(Model)
    .Name("Deducciones")
    .Columns(columns => {
        columns.Bound(p => p.IdDeducciones).ClientTemplate("");
        columns.Bound(p => p.FechaInscripcion).Width(50);
        columns.Bound(p => p.FechaFin).Width(400);
                        })
    .DataBinding(dataBinding => dataBinding
        //Ajax binding
        .Ajax()
        //The action method which will return JSON
        .Select("DeduccionesAjax", "Empleados", new { id = ViewBag.Id })
    )
    .Pageable(pager => pager.PageSize(2))
    .Sortable()
    .Render(); }

网格呈现正常但仅在我转到第2页时使用客户端模板 . 在初始加载时它不使用它 . 作为一种解决方法,我在ClientTemplate之后添加了 .Template(@<text><a href='#'>@item.IdDeducciones</a></text>); ,现在它既适用于初始加载,也适用于之后 . 然而,这看起来很奇怪,因为我见过的所有示例或文档都没有指定Template和ClientTemplate .

是否有一些我缺少的东西,使第一个负载不是来自Ajax或类似的东西?

提前致谢 .

1 回答

  • 1

    正如我在Telerik论坛中打开的_2730838中回复的那样,这是预期的,并且documented . 客户端模板仅在进行客户端绑定(例如ajax)时适用 . 在服务器绑定期间应用模板,例如:

    Html.Telerik().Grid(Model)
    

相关问题