Javascript & jQuery

select2 multi level

14.07.2023 1 dəq oxuma
<select name="category_id" id="category_id" style="width: 100%"></select>
$(document).ready(function() {
    let data = {!! json_encode($categories) !!};
    $('#category_id').select2({
        placeholder: 'Kateqoriya seçin',
        multiple: true,
        data: data,
    });
});
$categories = $this->CategoryPrepareForselect2($categories);

private function CategoryPrepareForselect2($categories)
{
    $output = [];
    foreach($categories as $category)
    {
        $bridge = [];
        $bridge['text'] = $category->name;
        if ($category->getChildren->count() > 0)
        {
            $childOutput = [];
            foreach ($category->getChildren as $child)
            {
                $childOutput[] = [
                  'id'=>$child->id,
                  'text'=>$child->name,
                ];
            }
            $bridge['children'] = $childOutput;
            $childOutput = [];
        }
        $output[] = $bridge;
        $bridge = [];
    }

    return $output;
}

 

Digər dildə: AZ