dklight
@dklight
php кодер - level 2.5

Как кастомизировать checkboxList в Yii2?

Добрый день.

Есть код:
foreach($types as $ck => $cv){
	$naa[$cv['id']] = $cv['name'];
}
echo $form->field($eventMain,'type',[
	'template' => "<label for=''>Выберите тип</label>                                             
	$chechBoxexForTypeFilter
	<div>{input}</div>",
	'options' => ['class' => 'class-radioCheckBox']
])->checkboxList(
	$naa,
	[
                 // 1
		'item' => function($index, $label, $name, $checked, $value) {
			$return = '<label>';
			$return .= '<input type="checkbox" name="' . $name . '"' . 'value="' . $value . '"' . ' >'."\n";
			$return .= '<i class="fa fa-square-o fa-2x"></i>' ."\n" .
			'<i class="fa fa-check-square-o fa-2x"></i>' ."\n";
			$return .= '<span>' . ucwords($label) . '</span>' ."\n";
			$return .= '</label>';

			return $return;
		},
		'id' => 'simpleFilterModal_radioCheckBox'
	]
);

и вопрос, как пробросить массив в 'item', чтобы сравнивая с ним поставить чекбоксы у уже отмеченных элементов?
  • Вопрос задан
  • 454 просмотра
Пригласить эксперта
Ответы на вопрос 2
kawabanga
@kawabanga
function($index, $label, $name, $checked, $value)

checked разве не за параметр ваш отвечает? проверьте дефолтный шаблон.
Ответ написан
@iSensetivity
бухгалтер, програміст-самоук
Чтобьі передавалось checked нужно чтобьі в $eventMain->type бьіл масив с отмеченьіми значениями.
$eventMain->type = [1, 2, 5];
// а потом уже
...............
echo $form->field($eventMain,'type',[
  'template' => "<label for=''>Выберите тип</label>                                             
  $chechBoxexForTypeFilter
  <div>{input}</div>",
  'options' => ['class' => 'class-radioCheckBox']
])
....................
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы