Javascript 获取剑道UI网格上的行数

Javascript 获取剑道UI网格上的行数,javascript,kendo-ui,kendo-asp.net-mvc,kendo-ui-grid,Javascript,Kendo Ui,Kendo Asp.net Mvc,Kendo Ui Grid,我在kedno tabstrip的第二个选项卡中有一个Kend UI网格,我需要得到其中的行数。为此,我使用 /** * Getting number of rows in grid by it's ID * @param {string} gridId ID of the Grid * @returns {number} number of rows */ function getGridRowsCountById(gridId) { var grid = $("#" + gr

我在kedno tabstrip的第二个选项卡中有一个Kend UI网格,我需要得到其中的行数。为此,我使用

/**
 * Getting number of rows in grid by it's ID
 * @param {string} gridId ID of the Grid
 * @returns {number} number of rows
 */
function getGridRowsCountById(gridId) {
    var grid = $("#" + gridId).data("kendoGrid");

    console.log(grid);

    grid.dataSource.read();  

    return grid.dataSource.total();    
}

根据网格对象的控制台日志,我得到了嵌套的dataSource对象和带有行数值的_total属性,但total()始终返回0

请尝试此函数:

function getGridRowsCountById(gridId) {
    return $("#" + gridId).data("kendoGrid").dataSource.data().length;
}

避免使用以下划线开头的属性,它可能用于其他目的。

请尝试此功能:

function getGridRowsCountById(gridId) {
    return $("#" + gridId).data("kendoGrid").dataSource.data().length;
}

避免使用以下划线开头的属性,它可能用于其他目的。

对此有任何更新吗?我已将计算行数的逻辑移到网格的数据绑定事件中,现在它工作正常,因为网格可能会在异步请求中检索数据,您在数据请求结束前调用了该函数。非常感谢您的建议!这方面有什么更新吗?我已经将计算行数的逻辑移到网格的数据绑定事件中,现在它工作得很好,因为您的网格可能在异步请求中检索数据,而您在数据请求结束之前调用了该函数。非常感谢您的建议!