список множественного выбора extjs из строки json - PullRequest
0 голосов
/ 29 июля 2011

Я пытаюсь создать список множественного выбора из магазина json, который находится в этом формате

[{"photo_id":1,"file_name":"test.JPG","x":123,"y":456},{"photo_id":2,"file_name":"test2.JPG","x":321,"y":765}]

Список множественного выбора заполняет строки, но не показывает имя файла в списке

var storeVar = new Ext.data.Store({
   extend: 'Ext.data.Model',
   fields: ['photo_id', 'file_name'],
   data: store // contains the json string
});

и вот поле мультиселекции

Ext.create('Ext.form.Panel', {
bodyPadding: 10,
frame: true,
width: '100%',
items: [
    {
        anchor: '100%',
        displayField: 'file_name',
        valueField: 'photo_id',
        store: storeVar ,
        xtype: 'multiselect',
        fieldLabel: 'Select an image',
        allowBlank: false
    }
]
})

Ответы [ 2 ]

3 голосов
/ 30 июля 2011

Григор, вы можете использовать Ext.JSON.decode для декодирования вашей строки в формате json:

var storeVar = new Ext.data.Store({
    extend: 'Ext.data.Model',
    fields: ['photo_id', 'file_name'],
    data: Ext.JSON.decode(store) // contains the json
});

Вот демоверсия

1 голос
/ 01 августа 2011

Вы смешиваете создание магазина с определением модели: строка

extend: 'Ext.data.Model'

не влияет на магазин, посмотрите примеры в документации документы

Я не могу комментировать / редактировать вопросы, поэтому я пишу это в новом ответе.

...