Как перебрать объект сетки extjs, чтобы получить его элементы и значения - PullRequest
6 голосов
/ 30 июня 2010

Я создал сетку и хочу получить к ней доступ, когда нажимаю кнопку «Сохранить» на странице. Как я могу зациклить объект сетки, чтобы получить его элементы и значения?

Ответы [ 4 ]

20 голосов
/ 01 июля 2010

Если вы хотите получить определенное поле из каждой записи:

var data = [];
store.each(function(rec){
    data.push(rec.get('field'));
});
4 голосов
/ 09 сентября 2011

Чтобы получить DOM строки, вы можете использовать следующий код:

yourGrid.getNode(yourGrid.getStore().getAt(rowIndex)) 

или вы можете использовать getNode напрямую, но в случае любой панели заголовков он может работать не так, как предполагалось.

yourGrid.getNode(rowIndex)

Это даст вам строку таблицы.

4 голосов
/ 01 июля 2010

Вот ответ на мой вопрос:

for (var i = 0; i < yourGrid.getStore().data.length; i++) { 
    var element = Ext.get(yourGrid.getView().getRow(i));
    var record = yourGrid.getStore().getAt(i);
    alert(record.data.ID);
}
4 голосов
/ 30 июня 2010

Как вы получаете строки из сетки?

var rows = grid.getStore().getRange();

строки будут массивом из Record объектов.

...