Замена <legend>на <div>в Zend_Form - PullRequest
0 голосов
/ 13 ноября 2011

У меня есть проблема с выравниванием моих легенд в формах, и чтение документации декоратора не совсем прояснило мне, как я могу заменить метку нормальным.быть готовым?

Спасибо.

1 Ответ

2 голосов
/ 15 ноября 2011

РЕДАКТИРОВАТЬ

Мне очень жаль, я все еще думал о ярлыке , а не легенде .Для замены тега легенды (который создается, когда вы используете подчиненные формы или вручную добавляете fieldset декоратор к вашей форме и вызываете $form->setLegend('some')) другим, у вас есть две опции.* Напишите свой собственный fieldset помощник вида (Zend_View_Helper_Fieldset) и поместите его в каталог помощников приложения.Это заставит ZF взять вашего помощника вместо этого, который находится в папке библиотеки.В этом оригинальном помощнике у вас есть:

// get legend
$legend = '';
if (isset($attribs['legend'])) {
    $legendString = trim($attribs['legend']);
    if (!empty($legendString)) {
        $legend = '<legend>'
                . (($escape) ? $this->view->escape($legendString) : $legendString)
                . '</legend>' . PHP_EOL;
    }
    unset($attribs['legend']);
}

Вы можете заменить тег легенды на div в вашем помощнике, и он будет работать.

Второй способ добиться этого - просто добавить декоратор HtmlTag в ваш экземпляр элемента Zend_Form.Посмотрите, это отличный урок, как использовать декораторы в ZF: http://devzone.zend.com/1240/decorators-with-zend_form/

Извините, что ввел вас в заблуждение в начале :(

...