JQuery select2 json данные с optgroup и изображениями
Я использую select2 с spring mvc. Я получил данные от своего контроллера, которые мне нужно отображать здесь с точки зрения параметров. Но я хочу, чтобы они были сгруппированы в группу optgroup, а также я хотел бы добавить в нее изображения, которые можно вставить вручную, как указано ниже: -
<optgroup label="group">
<option value="imageName">value 1</option>
<option value="imageName">value 1</option>
</optgroup>
Где imageName - это имя изображения. Я хочу:
1) Опции группы в json.
2) Предоставьте этот атрибут изображения в json, чтобы select2 мог сформировать данные.
Вот код:
$("#my-select").select2({
data : [ {
id : 0,
text : 'enhancement'
}, {
id : 1,
text : 'bug'
}, {
id : 2,
text : 'duplicate'
}, {
id : 3,
text : 'invalid'
}, {
id : 4,
text : 'wontfix'
} ]
});
Я создаю свой json вручную из своих объектов. Поэтому я могу предоставить любые данные здесь. Любые предложения?
Ответы
Ответ 1
Select2 сопоставляет объекты данных с тегами <option>
и <optgroup>
, используя следующую логику
Объект данных (что возвращается в списке), который выглядит как
{
'id': 'value-here',
'text': 'text-here'
}
Будет отображаться на <option>
, который выглядит как
<option value="value-here">text-here</option>
Объект данных, который выглядит как
{
'text': 'label-here',
'children': [data_object, data_object]
}
Будет отображаться в <optgroup>
, который выглядит как
<optgroup label="label-here">
<!-- HTML for the `children` -->
</optgroup>
Итак, объект данных, который вы хотите вернуть,
{
'text': 'group',
'children': [
{
'id': 'imageName',
'text': 'value 1'
},
{
'id': 'imageName',
'text': 'value 1'
}
]
}