如何在Telerik ASP.Net MVC网格中使用Ajax绑定访问网格行计数? 我需要在页脚中显示总数,请参阅下面的代码段。总计必须在插入和删除时更新。
使用服务器绑定时,有@ Model.Count()。如何使用Ajax绑定做同样的事情?
谢谢你! @{
Html.Telerik()
.Grid<ContractMonth>()
.Name("contractMonthGrid")
.DataBinding(dataBinding => dataBinding
.Ajax()
.Select("_AjaxBinding", "ContractMonth")
.Insert("_AjaxInsert", "ContractMonth")
.Delete("_AjaxDelete", "ContractMonth")
)
.DataKeys(keys => keys.Add(c => c.Id))
.ToolBar(commands => commands.Insert())
.Columns(columns =>
{
columns.Bound(o => o.StartDate).EditorTemplateName("Date").FooterTemplate(@<text>@Model.Count()</text>);
答案 0 :(得分:5)
Telerik MVC网格支持服务器和Ajax aggregates:
支持以下聚合:
- 平均
- 计数
- 最小
- 最高
- 萨姆
要指定列的聚合,请使用聚合方法
所以在你的样本中:
.Columns(columns =>
{
columns.Bound(o => o.StartDate)
.EditorTemplateName("Date")
.Aggregate(aggregates => aggregates.Count())
.FooterTemplate(@<text>@item.Count</text>)
.ClientFooterTemplate("<#= Count #>");
}
如果您需要在网格“外部”排行,则可以使用网格client side API:
<script type="text/javascript">
$(function() {
var totalRows = $("#contractMonthGrid").data("tGrid").total;
//do something with totalRows
});
</script>