我有以下select2输入;
$('#input').select2({
width: '100%',
placeholder: "Brand/product name",
allowClear: true,
data: parseRawDataToSelect2(),
templateSelection: formatForDisplay,
escapeMarkup: function (m) {
return m;
}
});
parseRawDataToSelect2
返回select2输入的以下数据:
[
{
id: '',
text: 'group 1',
children: [{id: 1, text: 'option 1 in group 1'}, {id: 2, text: 'option 2 in group 1'}]
},
{
id: '',
text: 'group 2',
children: [{id: 3, text: 'option 3 in group 2'}, {id: 4, text: 'option 4 in group 2'}]
}
]
我发现formatSelection
已不再使用,必须使用templateSelection
代替'escapeMarkup'回调。但是templateSelection
只会将以下数据注入formatForDisplay
;
{id: "", text: "Brand/product name"}
但是,在进行选择时,我需要访问组中的子选项。我无法找到解决这个问题的正确解决方案。有人可以指导我这样做的正确方法吗?
答案 0 :(得分:0)
<select></select>
元素通过分组选项完成了这一操作。
问题出在我的html元素上,因为我使用<input></input>
来附加select2功能。我正在使用
使用<input>
元素的分组选项,Select2 4.0.3无效。如果我错了,请纠正我。