2010-04-06 12 views
20

Mi piacerebbe sapere come ottenere il conteggio delle righe per jqGrid. Sto usando rowNum: -1 quindi visualizza tutte le righe. Ho provato ad utilizzare:Come ottenere il conteggio delle righe per jqGrid?

parseInt($("#grid").getGridParam("records"), 10) 

ma restituisce sempre 0.

Grazie per l'aiuto.

risposta

34

Prova:

$("#grid").getGridParam("reccount") 

dal jqGrid documentation:

RECCOUNT (intero):

proprietà di sola lettura. Restituisce il numero esatto di righe nella griglia


Si noti anche che, come Mike ha commentato, è necessario utilizzare il metodo getGridParam con l'opzione records per recuperare un conteggio di tutte le righe se si utilizza l'impaginazione .

+1

Si noti che se si attiva il paging in jqGrid, questa funzione restituirà solo il numero di righe mostrato * su questa pagina *. Per ottenere il conteggio completo delle righe, utilizzare la funzione 'getGridParam', mostrata in una delle altre risposte. –

+1

@MikeGledhill - Grazie, ho aggiornato questa risposta per includere 'records' poiché nessuna delle altre risposte spiega perché funzioni. Nota che l'op non stava usando l'impaginazione, ma molte persone che leggono questo potrebbero essere ... –

2

Ho provato a ricorrere e ho ottenuto zero ma il seguente ha funzionato per me.

<div>Total subscriber count: <div id="count" style="display: inline;"></div></div> 

<br /> 

<div> 
    <table id="grid"></table> 
</div> 

<script type="text/javascript"> 

    $(document).ready(function() { 
     $("#grid").jqGrid({ 
      //Other stuff removed for brevity 
      gridComplete: function() { 
       $('#count').html($('#grid').getGridParam('records')); 
      } 
     }); 
    }); 

</script> 
1

Questo potrebbe essere eccessivo e non so se c'è un modo migliore, ma questo funziona per me:

$("#grid").getRowData().length 
13
jQuery("#grid").jqGrid('getGridParam', 'records'); 
0
<a href="javascript:void(0)" id="g9" onclick="alert(jQuery('#list').jqGrid('getGridParam','records'));">Get number of records in Grid</a> 
0

Ottengo i dati della griglia a matrice e poi usa la funzione della lunghezza dell'array per ottenere la lunghezza dell'array. È uguale per il numero di record in jqgrid.

//get the grid data to array  
var rows = $('#jqxgrid').jqxGrid('getrows'); 
// get the length of the array on array.length using javascript funcation 
alert('' + rows.length); 
Problemi correlati