2012-06-11 4 views
1

Код ниже предназначен для получения строки Json для выбранных строк в сетке. Однако это кажется довольно неуклюжим или это способ пойти на extjs 4?extjs 4.0 извлекает значения сетки

var json = "["; 
var selrows = g.getView().getSelectionModel().getSelection(); 
for (var r=0; r<selrows.length; r++) { 
    var selrow = selrows[r]; 
    json += "{"; 
    for (var f=0; f<selrow.fields.length; f++) { 
     var n = selrow.fields.items[f].name; 
     var v = selrow.data[n]; 
     json += "'" + n + "' : '" + v + "',"; 
    } 
    json += "},"; 
} 
json += "]"; 
alert(json); 

В Firebug я вижу JSon Двойник представление selrow вар, но я не могу показаться, чтобы получить ее в JavaScript.

ответ

1

Попробуйте это:

json = Ext.JSON.encode(g.getView().getSelectionModel().getSelection().map(function(e){ return e.data; })); 

alert(json); 
+0

Спасибо Марку, что гораздо понятнее ... – Paul

Смежные вопросы