Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 18-06-2012 22:33:35

__fabrice
Membre
Date d'inscription: 25-04-2007
Messages: 131

Décorateurs et Groupes (addDisplayGroup & getDisplayGroup))

Salut à tous,

Encore un soucis avec les décorateurs :roll:
J'utilise ceux ci (avec des tableaux) :

Code:

        $this->setElementDecorators(array(
            'ViewHelper',
            array(array('data' => 'HtmlTag'),  array('tag' =>'td', 'class'=> 'element')),
            array('Label', array('tag' => 'td')),
            array(array('row' => 'HtmlTag'), array('tag' => 'tr'))
        ));
        
        $submitLogin->setDecorators(
            array('ViewHelper', 
            array(array('data' => 'HtmlTag'),  array('tag' =>'td', 'class'=> 'element')),
            array(array('emptyrow' => 'HtmlTag'),  array('tag' =>'td', 'class'=> 'element', 'placement' => 'PREPEND')),
            array(array('row' => 'HtmlTag'), array('tag' => 'tr'))
        ));   

        $this->setDecorators(array(
            array('FormErrors', array('label'=>'')),        
            'FormElements',
            array('HtmlTag', array('tag' => 'table', 'class'=> 'table_edit_news table_contact')),
            'Form'
        ));

(1) J'aimerai regrouper 2 élement radios avec les décorateurs de bases (dl, dt et Fieldset) ou au moins les dissocier. J'ai fait comme ceci, mais çà marche pas :

Code:

         $particulier = new Zend_Form_Element_Radio('particulier', array(
        'multiOptions' => array(
            'part' => 'particulier',
            'pro' => 'pro')
        ));     
        $particulier->setValue(array('part'))
        ->setAttrib('title',$translate->translate('tooltip particulier ou pro'));

Et apres, mes décorateurs :

Code:

        // Groupes ///////////////////////////////////////////////////////////////////////////
        $this->addDisplayGroup(array(        
        'particulier')
        ,'contact',
        array('legend' => $translate->translate('vous etes')));

        $partpro = $this->getDisplayGroup('contact');
        
        $partpro->setDecorators(array(        
                    'FormElements',
                    'Fieldset',
                   /* array('HtmlTag',array('tag'=>'div','style'=>'width:50%;float:left;'))*/
        ));

Donc, comme garde mes formulaires en tableaux et en faire d'autres (boutons radios) avec des dl, dt, et surtout un Fieldset (pour le cadre autour).

(2)Autre question Sinon, on peut grouper 3 groupes d'elements (avec les décorateurs en tableaux) pour en faire un en haut, et, 2 en-dessous et cotes-à-cotes ?

Merci smile
Fabrice

PS : Si vous avec une autre méthode d'ailleurs, je suis preneur.

Dernière modification par __fabrice (18-06-2012 22:35:50)

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages