Группировка результатов в Select2
Возможно ли как-либо выполнить результаты группы в компоненте Select2, если он не использует тег <select>
, но <input type="hidden">
, а результаты предоставляются как "данные" в объекте конфигурации?
var select2Options = {
data: {
results: myArrayOfResults
}
};
Ответы
Ответ 1
Да, объекты results
поддерживают атрибут children
...
так, например:
var select2Options = {
data: {
results: [
{text: "My shiny group", children: [
{id: 1, text: "My shiny item"},
{id: 2, text: "My shiny item2"}
]}
]
}
};
Ответ 2
Для загрузки данных ajax с использованием группы и данных для меня,
$arrFinal = array(array("name"=>"My shiny group 1",
"children"=>array(array("id"=>1,"name"=>"My shiny item 11"),array("id"=>2,"name"=>"My shiny item 12"))
),array("name"=>"My shiny group 2",
"children"=>array(array("id"=>1,"name"=>"My shiny item 21"),array("id"=>2,"name"=>"My shiny item 22"))
)
);
die(json_encode(array("result" => $arrFinal)));
if formatResult: ratioFormatResult then,
function ratioFormatResult(row) {
// Here, you will get both group ("My shiny group 1") as well as data("My shiny item11") as row .
}
Чтобы сделать выбор группы, используйте поле id вместе с именем в группе.