2013-04-10 2 views
1

Я пробовал так:Как установить положение для флажков/радиокнопков в Zend Framework 2?

<?php 
echo $this->formRow($form->get('weekday'), Zend\Form\View\Helper\FormRow::LABEL_PREPEND); 
?> 

Но метки все еще оставаясь позади флажков.

enter image description here

Как я должен установить положение метки правильно?

+0

Можете ли вы попробовать установить 'option {label_position = 'append'}' в свой элемент 'weekday'? :) Это может решить его уже, но я не уверен, если не у меня есть более длинное решение: P – Sam

ответ

0

Является ли будний день мульти-checkbox? Если это так, используйте метод визуализации formMultiCheckbox вместо formRow и ярлык будет расположен там, где вы хотите.

Я отлаживал процесс, и это странное поведение. Когда вызывается класс Zend/Form/View/Helper/FormRow, позиция метки инициализируется, как вы ожидаете (LABEL_PREPEND).

Позже класс Zend/Форма/View/Helper/FormMultiCheckbox называется, но она не наследует позицию от FormRow, и использует его значение по умолчанию, который является тот, который вы не хотите, LABEL_APPEND.

Проверьте метод __invoke на обоих классах, и вы увидите.

+0

Необходимо указать, что '

' и' 'необходимо отображать вручную, поскольку «FormMultiCheckbox» предоставил только флажки. Вот почему я попросил другую попытку выше с установкой label_position как опции для элемента, который должен решить проблему;) – Sam

+0

Спасибо за ваш ответ! Он работает сейчас! Такое поведение не так странно. Есть два типа этикетки в радио/multicheckbox: метка всего набора и метка каждого элемента: '' (в ZF 'type_2' не получить 'label' tagby по умолчанию). Я думаю, что хорошо, что позиция ярлыка 'type_1' (весь набор флажков) не наследуется от каждого флажка (' type_2'). Другой вопрос: как установить оба? Так как нельзя вставлять 'formRow (...)' и 'formMultiCheckbox (...)' друг в друга ... – automatix

+0

@automatix вы пытались установить параметр «label_position»? – Sam

Смежные вопросы