web-dev-qa-db-ja.com

Select2で結果をグループ化する

Select2コンポーネントで<select>タグを使用していないが<input type="hidden">を使用していて、結果が構成オブジェクトの「データ」オプションとして提供されている場合、どういうわけかグループ結果は可能ですか?

var select2Options = {
  data: {
    results: myArrayOfResults
  }
};
17
the.ufon

はい、resultsオブジェクトはchildren属性をサポートしています...

たとえば:

var select2Options = {
  data: {
    results: [
      {text: "My shiny group", children: [
          {id: 1, text: "My shiny item"}, 
          {id: 2, text: "My shiny item2"}
      ]}
    ]
  }
};
36
the.ufon

グループを使用した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フィールドを使用します。

0
Hemant Thorat