Шаблон для checkboxList

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
oxfree
Сообщения: 17
Зарегистрирован: 2015.10.31, 05:17

Шаблон для checkboxList

Сообщение oxfree »

Здравствуйте. По умолчанию yii2 генерирует checkboxlist таким образом

Код: Выделить всё

<div id="parsingsearch-rooms">
	<div class="checkbox">
		<label><input type="checkbox" name="ParsingSearch[rooms][]" value="Студия"> Квартиры студии</label>
	</div>
	<div class="checkbox">
		<label><input type="checkbox" name="ParsingSearch[rooms][]" value="1"> Однокомнатные квартиры</label>
	</div>
</div>
мне нужно, чтобы было так

Код: Выделить всё

<div id="parsingsearch-rooms" class = "apartment-checkbox">
	<div class="apartment-checkbox_item">
		<input type="checkbox" id="ParsingSearchrooms_0" name="ParsingSearch[rooms][]" value="Студия">
		<label for="ParsingSearchrooms_0">Квартиры студии</label></div>
	<div class="apartment-checkbox_item">
		<input type="checkbox" id="ParsingSearchrooms_1" name="ParsingSearch[rooms][]" value="1">
		<label for="ParsingSearchrooms_1">Однокомнатные квартиры</label>
	</div>
</div>
для этого я использовал решение

Код: Выделить всё

$form->field($model, 'rooms')
        ->checkboxList([
            'Студия' => 'Квартиры студии',
            '1' => 'Однокомнатные квартиры',
        ],[
            'class' => 'apartment-checkbox',
            'item' => function ($index, $label, $name, $checked, $value) {
                $id = str_replace(array('[',']'), '', $name).'_'.$index;
                $result = '<div class="apartment-checkbox_item">'.
                    Html::checkbox($name,$checked,['value'=>$value,'id'=> $id]).
                    Html::label($label,$id).
                    '</div>';
                return $result;
            }
        ]);
 
Все это выглядит каким-то костылем, есть ли более изящное решение этой задачи? Спасибо.
Аватара пользователя
vitalik1183
Сообщения: 1675
Зарегистрирован: 2014.07.01, 08:42

Re: Шаблон для checkboxList

Сообщение vitalik1183 »

норм
Yii2!
Ответить