Обновление Я смог заставить это работать, создав собственный декоратор Label, который расширил Zend / Form / Decorator / Label.php. Я добавил метод setTagClass () к нему и переопределил метод рендеринга, чтобы создать тег с нужным классом. Возможно, есть более элегантный способ сделать это, но, похоже, это работает.
Я ищу информацию о том, как установить класс для элемента dt метки с помощью декоратора. Третья строка кода ниже устанавливает класс для метки и оборачивает метку в тег dt. Я хочу знать, как я могу установить класс на тэге dt.
$txtLangPrefOther = $this->createElement('text','langPrefOther');
$txtLangPrefOther->setLabel('Language Preference Other:'));
$txtLangPrefOther->getDecorator('Label')->setOptions(array('tag' => 'dt', 'class' => 'other'));
Это производит вывод, такой как
<dt id="langPrefOther-label">
<label for="langPrefOther" class="other">Language Preference Other:</label>
</dt>
<dd id="langPrefOther-element">
<input type="text" id="langPrefOther" name="langPrefOther" ">
</dd>
Я хочу, чтобы это выглядело
<dt id="langPrefOther-label" class="other">
<label for="langPrefOther">Language Preference Other:</label>
</dt>
<dd id="langPrefOther-element">
<input type="text" id="langPrefOther" name="langPrefOther" ">
</dd>