Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/448.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 剑道网格、虚拟滚动、页面大小和聚合_C#_Javascript_.net_Kendo Ui - Fatal编程技术网

C# 剑道网格、虚拟滚动、页面大小和聚合

C# 剑道网格、虚拟滚动、页面大小和聚合,c#,javascript,.net,kendo-ui,C#,Javascript,.net,Kendo Ui,当我为使用页面大小定义的数据源的剑道网格打开虚拟滚动时,当我滚动并进行虚拟分页时,它会更改聚合页脚模板中的总计,以匹配页面大小中的总计。最初创建栅格时,这些值是正确的。有没有办法锁定这些聚合值,以便在虚拟分页发生时它们不会更改?使用MVC 请尝试以下链接。 如果有任何问题,请告诉我 使用Jquery <div id="grid"> </div> <script> function onDataBound(arg) { var UnitPric

当我为使用页面大小定义的数据源的剑道网格打开虚拟滚动时,当我滚动并进行虚拟分页时,它会更改聚合页脚模板中的总计,以匹配页面大小中的总计。最初创建栅格时,这些值是正确的。有没有办法锁定这些聚合值,以便在虚拟分页发生时它们不会更改?

使用MVC

请尝试以下链接。

如果有任何问题,请告诉我

使用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>

函数onDataBound(arg){
var UnitPrice=0;//总和
var UnitsOnOrder=0;//平均值
var total=arg.sender.dataSource.\u data.length;//总计
对于(变量i=0;i

如果有任何问题,请告诉我。

了解您的网格配置会有所帮助。您是使用ASP MVC助手创建小部件还是使用javascript创建小部件?我想这是一个解决方案,但我希望有一个解决方案可以包括使用内置的网格页脚。列:[{field:“value”,格式:“{0:C}”,页脚模板:“#=kendo.toString(sum,'C')#”}