2015-05-06 5 views
2

У меня есть сетка с одним столбцом «имя», которое пуст в начале. У меня также есть JSONObject, внутри которого есть массив полей. Теперь мне нужно добавить каждое имя поля в виде строки в сетке динамически (поскольку JSONObject, который я получаю через службы REST). Пожалуйста, совет, как мне это сделать.Добавить строки в сетку в extjs динамически

Я хочу знать, как добавить динамическое хранилище, которое, наконец, отразится даже после загрузки страницы.

.: например

datajson: { 
    ... 
    events: { 
     'First row' : { 
      ... 
     }, { 
     'Second row' : { 
      ... 
     } 
    } 
} 

Так что теперь сетка должна содержать «Первый ряд» и «Второй ряд», как две записи.

+1

Берут посмотрите этот пример [Ext JS] (http://dev.sencha.com/extjs/5.1.0/examples/writer/writer-jsonp.html), в частности, что происходит, когда пользователь нажимает кнопку «Добавить» в сетке. Вы должны быть способны сделать что-то очень похожее. Вам также потребуется декодировать ваш JSON с помощью [Ext.JSON.decode] (http://docs.sencha.com/extjs/5.1/5.1.0-apidocs/#!/api/Ext.JSON-method-decode). –

+0

Большое спасибо за этот пример. Это действительно проницательно. На самом деле это помогает мне и в других областях :) –

ответ

3

связывают магазин к сетке

{ 
    xtype: 'grid', 
    store: myStore 
} 

затем обновить ваш магазин с данными

myStore.loadData(jsonData) 

после вы можете обновить сетку с:

myStore.getView().refresh(); 
+1

Вы также можете установить прокси-сервер REST в свой магазин. –

+0

Спасибо за ответ. Я пошел с другим подходом: Ext.getCmp ('name_of_grid'). GetStore(). Add ({'name': 'firstrow'}); Я сделал это внутри цикла for. –

+0

Мое предложение не так. просто не получить плохие привычки :) – aviram83

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