Имам формуляр със Zend_From и моята форма по подразбиране е обвита от DL, DT и DD тагове и това е добре!
Трябва да добавя * ‹-- този знак към задължителните полета. Първо реших да добавя изрично този знак към всеки елемент от формуляра, но след това не можах да включа HTML тагове в него, така че например да получа <label>My Form Label:<span> *</span></label>
, за да мога да направя * ‹-- този знак с червен цвят.
Сега намерих друго решение:
$elementDecorators = array(
'ViewHelper',
array('Label', array('tag' => 'span', 'escape' => false, 'requiredSuffix' => '<span class="required">* </span>'))
);
и за всяка форма:
$myElement->setDecorators($elementDecorators);
и след това опитах друг подход:
$myElement->getDecorator('label')
->setOptions(array('requiredSuffix'=> ' <span class="required">*</span> ', 'escape'=> false));
Проблемът е, че след като приложа този код към моя елемент на формуляр, той губи DL, DT, DD обвивки. и след това изглежда ужасно.
Можете ли да ми кажете как да добавя Decorator към етикета, без да унищожа DL нещо?