2013-10-31 11 views
9

voglio accedere ai dati della griglia, come di seguitoCome ottenere i dati per tutte le righe in jqGrid con impaginazione

var namePresent; 
    var datafromgrid = $('#MyGrid').jqGrid('getRowData'); 
    for (var i = 0; i < rowCount; i++) { 
     var name = datafromgrid[i].Name; 
     var firstname = name.split(/ +/); 
     if (firstname[0].toLowerCase() == Name.toLowerCase()) { 
      namePresent = 1; 
     } 
    } 

Ora supponiamo quando la mia griglia è caricata con 5 record allora questo codice genera errore sulla linea var name = griddata[i].Name; come da griglia non è in grado di leggere griddata [5]. Per favore, dimmi come leggere i dati dell'intera griglia anche se non è visibile sullo schermo ma viene recuperato con successo?

risposta

24

si può provare a utilizzare:

var allRowsInGrid = $('#list4').jqGrid('getGridParam','data'); 
+1

WOW !!! Tu sei il mio eroe!!! Grazie mille!!! Ho una griglia molto personalizzata in cui una cella può avere più ingressi e il tuo codice mi consente di manipolare i dati locali e quindi inviarli al server. –

+0

ha funzionato anche per me! –

5

In questo modo è più "bella":

var allRowsInGrid = $('#list4').getGridParam('data'); 
-1

Dopo aver scavato nella documentazione, che si trova in questo modo dritto in avanti.

var allRowsInGrid = $('#list4').jqGrid('data'); 

Questo restituisce un oggetto Array JavaScript. Per controllare i valori in JS Object puoi semplicemente usare il seguente modo.

var stringVersion = JSON.stringify(allRowsInGrid); 

alert (stringVersion); 
Problemi correlati