Как удалить элементы dd и dt html при рендеринге элемента Form в ZF? - PullRequest
12 голосов
/ 08 мая 2009

Я визуализирую Zend_Form_Element_Select.

$t=new Zend_Form_Element_Select(....);
...
...
echo $t->render();

Я получаю выпадающий список и параметры правильно, но я также помещаю элемент select в

<dt> </dt>
<dd>[elm]</dd>

Как мне удалить этот декоратор?

Ответы [ 2 ]

18 голосов
/ 08 мая 2009

у вас есть больше возможностей: Соответствующее руководство:

http://framework.zend.com/manual/en/zend.form.elements.html#zend.form.elements.decorators

Второй - удалить ненужные декораторы

$t->removeDecorator('Errors');
$t->removeDecorator('HtmlTag');
$t->removeDecorator('Label');

Третий (вероятно, лучший для вас) - устанавливать только те декораторы, которые вам нужны. В следующем коде будет установлен только помощник вида декоратора, поэтому не будет ни метки, ни сообщения об ошибке, ни HTML-тегов

$t->setDecorators(array(
    array('ViewHelper'),
));

очень хорошая статья о декораторах здесь:

http://devzone.zend.com/article/3450

3 голосов
/ 01 декабря 2009

Это сделало это для меня:

$el->setDecorators(array( 'ViewHelper', 'Errors', 'Label'<br> ));

...