ZendFramework: atrybuty labeli w elementach radio(element multi)

September 7th, 2009 | Tags: , , , ,

Budując aplikacje z użyciem Zend Frameworka nie sposób nie wykorzystać potężnego narzędzia jakim jest Zend_Form i dekoratory. W ostatnim projekcie musiałem dodać atrybuty do labeli w elemencie Zend_Form_Element_Radio(dziedziczący po Zend_Form_Element_Multi). Docelowy kod miał wyglądać następująco:

[source language="html"]



[/source]

Problem w tym, że za pomocą dekoratorów nie dodamy atrybutów do labeli okalających inputy. Rozwiązaniem problemu jest ustawienie odpowiednich atrybutów do elementu:

[source language="php"]
$element = new Zend_Form_Element_Radio(‘e_name’);
$element->addMultiOptions(array(
’1′ => ‘Tak’,
’0′ => ‘Nie’,
))->setValue(’1′)->setLabel(‘Czy naprawa gwarancyjna?’)
->setAttribs(array(‘class’ => ‘checkbox’, ‘label_class’ => ‘inline lh28′))
->setSeparator(”);
[/source]

każdy atrybut ustawiany metodą setAttribs() z prefiksem label_ lub label będzie dotyczył tych okalających inputy, pozostałe będą dodane do głównego labela elementu.

Number of Views :4289
  1. September 9th, 2009 at 10:47
    Reply | Quote | #1

    Великолепно. Тема заинтересовала. Пошел серфить яндекс