diff --git a/ActiveField.php b/ActiveField.php index 5dccf27..0deaa7d 100644 --- a/ActiveField.php +++ b/ActiveField.php @@ -254,9 +254,11 @@ class ActiveField extends \yii\widgets\ActiveField 'labelOptions' => ['class' => 'checkbox-inline'], ]; } - } elseif (!isset($options['item'])) { - $options['item'] = function ($index, $label, $name, $checked, $value) { - return '
' . Html::checkbox($name, $checked, ['label' => $label, 'value' => $value]) . '
'; + } elseif (!isset($options['item'])) { + $itemOptions = isset($options['itemOptions']) ? $options['itemOptions'] : []; + $options['item'] = function ($index, $label, $name, $checked, $value) use ($itemOptions) { + $options = array_merge(['label' => $label, 'value' => $value], $itemOptions); + return '
' . Html::checkbox($name, $checked, $options) . '
'; }; } parent::checkboxList($items, $options); @@ -280,9 +282,11 @@ class ActiveField extends \yii\widgets\ActiveField 'labelOptions' => ['class' => 'radio-inline'], ]; } - } elseif (!isset($options['item'])) { - $options['item'] = function ($index, $label, $name, $checked, $value) { - return '
' . Html::radio($name, $checked, ['label' => $label, 'value' => $value]) . '
'; + } elseif (!isset($options['item'])) { + $itemOptions = isset($options['itemOptions']) ? $options['itemOptions'] : []; + $options['item'] = function ($index, $label, $name, $checked, $value) use ($itemOptions) { + $options = array_merge(['label' => $label, 'value' => $value], $itemOptions); + return '
' . Html::radio($name, $checked, $options) . '
'; }; } parent::radioList($items, $options);