Задать вопрос

Как вынести checkbox из label в CheckboxList в Yii?

Генерирую чекбокслист
Html::checkboxList('season', false, ['Зима', 'Лето', 'Демисезон']])

Получаю такую верстку
1b32e28dcf474f42a6c4023bcba96e74.png
Как изменить шаблон списка, что б input чекбокса был перед label, а не в нем?

Нужно кастомизировть чекбокс, для этого хочу разделить иконку чекбокса от лейбла
  • Вопрос задан
  • 2244 просмотра
Подписаться 2 Оценить Комментировать
Решения вопроса 1
gogolinsky
@gogolinsky Автор вопроса
Решил так
Html::checkboxList(
            'attribute',
            false,
            $options,
            [
                'item' => function($index, $label, $name, $checked, $value) {
                    $checkedLabel = $checked ? 'checked' : '';
                    $inputId = str_replace(['[', ']'], ['', ''], $name) . '_' . $index;

                    return "<div><input type='checkbox' name=$name value=$value id=$inputId $checkedLabel>"
                    . "<label for=$inputId>$label</label></div>";
                }
            ]
        );
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@holfza
Html::checkboxList('season', false, ['Зима', 'Лето', 'Демисезон'],['template' => '{input}{label}'])
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы