2016-07-12 11 views
0

Ich habe ein Kend UI Gitter in einem zweiten Tab von kedno tabstrip und ich brauche die Anzahl der Zeilen darin. Zu diesem Zweck verwende ichZeilenanzahl auf einem Kendo UI Grid erhalten

/** 
* 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();  
} 

Nach Konsolenprotokoll von gird Objekt I verschachteltes Datasource-Objekt und _total Eigenschaft mit der Anzahl der Zeilen Wert darin habe, aber insgesamt() gibt immer 0

+0

Irgendwelche Updates zu diesem Thema? – DontVoteMeDown

+0

Ich habe Move-Logik der Anzahl der Zeilen in DataBound-Ereignis des Gitters zählen und jetzt funktioniert es gut – Anton

+1

Das, weil Ihr Raster wahrscheinlich die Daten in einer asynchronen Anfrage abruft, und Sie die Funktion aufgerufen haben, bevor die Datenanforderung endet. – DontVoteMeDown

Antwort

2

diese Funktion Try stattdessen:

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

Vermeiden Sie die Verwendung von Eigenschaften als Unterstreichung gestartet, es ist wahrscheinlich für einen anderen Zweck verwendet.

+0

Ich habe das schon probiert. Das Ergebnis ist das gleiche – Anton