Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 24-02-2009 13:05:07

_Raynor_
Membre
Date d'inscription: 11-09-2008
Messages: 28

[Zend_From][1.7.0] MultiCheckbox dans tableau double-entrée ?

Bonjour,

J'essaie actuellement d'afficher des MultiCheckbox dans un tableau double-entrée mais j'ai des problèmes avec les Decorator et les View_Helper associés.

Ce que je veux obtenir au final (à peu près) :

Code:

<form>
<table>
    <thead>
        <td>{Texte de la Checkbox n°1 (eg. Lecture)}</td>
        <td>{Texte de la Checkbox n°2 (eg. Ecriture)}</td>
        <td>{Texte de la Checkbox n°3 (eg. Suppression}</td>
    </thead>
    <tbody>
    <!-- Boucle: Pour chaque MultiCheckbox -->
    <tr>
        <td>{Label du MultiCheckbox (eg. Droits de l'utilisateur MARTIN Pierre)}</td>
        <td>{Checkbox n°1 du MultiCheckbox}</td>
        <td>{Checkbox n°2 du MultiCheckbox}</td>
        <td>{Checkbox n°3 du MultiCheckbox}</td>
    </tr>
    <!-- FinBoucle -->
    </tbody>
</table>
</form>

Chaque Zend_Form_Element_MultiCheckbox a un nom qui lui est propre mais la value et le texte de chaque checkbox des MultiCheckbox sont les même.

Je suis arrivé à mettre le <form> dans un <table> ainsi :

Code:

$form->setDecorators(array(
    'FormElements',
    array(
        'HtmlTag', 
        array(
            'tag' => 'table',
            'class' => 'zend_form'
        )
    ),
    'Form',
));

Et à mettre chaque MultiCheckbox dans une ligne de ce tableau et chaque checkbox des MultiCheckbox dans une cellule dédiée de cette ligne :

Code:

$currentMulticheckbox->setSeparator('</td><td>');
$currentMulticheckbox->setDecorators(array(
    'ViewHelper',
    'Errors',
    array(array('data' => 'HtmlTag'), array('tag' => 'td')),
    array('Label', array('tag' => 'td')),
    array(array('row' => 'HtmlTag'), array('tag' => 'tr')),
));

Mais je n'arrive pas à faire le <thead> (j'ai déjà, par ailleurs, les textes que je veux afficher : "Lecture", "Ecriture", "Suppression").

Plus j'y songe et plus je me dit que je devrais peut-être faire mon propre Zend_View_Helper_ mais là non plus je ne sais pas par où commencer : étendre Zend_View_Helper_FormMultiCheckbox ou bien créer un Decorator pour le Zend_Form_Element_MultiCheckbox ?.

Dernière modification par _Raynor_ (24-02-2009 15:12:34)

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