ページ サイズで定義されたデータ ソースを持つ剣道グリッドで仮想スクロールをオンにすると、スクロールして仮想ページングが発生すると、集計フッター テンプレートの総計がページ サイズの合計と一致するように変更されます。これらの値は、グリッドが最初に作成された時点では正しいものです。これらの集計値をロックダウンして、仮想ページングが発生したときに変更されないようにする方法はありますか?
質問する
3829 次
1 に答える
1
MVC の使用
以下のリンクで試してみてください。 http://developerom.blogspot.in/2012/12/how-to-use-aggregate-function-in-kendo.html
気になることがあれば教えてください。
Jquery の使用
<div id="grid">
</div>
<script>
function onDataBound(arg) {
var UnitPrice = 0; // sum
var UnitsOnOrder = 0; //average
var total = arg.sender.dataSource._data.length; // total
for (var i = 0; i < total; i++) {
UnitPrice += parseInt(arg.sender.dataSource._data[i].UnitPrice);
UnitsOnOrder += parseInt(arg.sender.dataSource._data[i].UnitsOnOrder);
}
$("#spanProductNamefooter").html('Total count: '+total);
$("#spanUnitPricefooter").html('Sum: '+UnitPrice);
$("#spanUnitsOnOrderfooter").html('average: '+parseInt(UnitsOnOrder/total));
}
function onDataBinding(arg) {
}
$(document).ready(function () {
$("#grid").kendoGrid({
dataSource: {
type: "odata",
transport: {
read: "http://demos.kendoui.com/service/Northwind.svc/Products",
dataType: "jsonp",
},
schema: {
model: {
fields: {
UnitsInStock: { type: "number" },
ProductName: { type: "string" },
UnitPrice: { type: "number" },
UnitsOnOrder: { type: "number" },
UnitsInStock: { type: "number" }
}
}
},
pageSize: 7,
aggregate: [{ field: "ProductName", aggregate: "count" },
{ field: "UnitPrice", aggregate: "sum" },
{ field: "UnitsOnOrder", aggregate: "average" },
{ field: "UnitsInStock", aggregate: "min" },
{ field: "UnitsInStock", aggregate: "max"}]
},
sortable: true,
height: 430,
dataBound: onDataBound,
dataBinding: onDataBinding,
scrollable: {
virtual: true
},
columns: [
{ field: "ProductName", title: "Product Name", footerTemplate: "<span id='spanProductNamefooter'></span>"},
{ field: "UnitPrice", title: "Unit Price",footerTemplate: "<span id='spanUnitPricefooter'></span>" },
{ field: "UnitsOnOrder", title: "Units On Order", footerTemplate: "<span id='spanUnitsOnOrderfooter'></span>"},
{ field: "UnitsInStock", title: "Units In Stock"}
]
});
});
</script>
気になることがあれば教えてください。
于 2013-08-23T12:13:10.377 に答える