2010-01-14 6 views
1

J'ai changé décorateur:Comment supprimer les messages d'erreur Zend Form?

private function _addErrorDecorator($form) 
{ 
    $form->setDecorators(array(
     'FormElements', 
     new Zend_Form_Decorator_FormErrors(array 
      (
       'ignoreSubForms' => true, 
       'markupElementLabelEnd' => '</b>', 
       'markupElementLabelStart' => '<b>', 
       'markupListEnd' => '</div>', 
       'markupListItemEnd' => '</span>', 
       'markupListItemStart' => '<span>', 
       'markupListStart' => '<div id="Form_Errors">' 
      ) 
     ), 
     'Form' 
    )); 
    return $form; 
} 

Mais maintenant je dois supprimer les messages d'erreur dans les champs de formulaire. Comment puis-je le faire?

Répondre

4

Chaque élément, sous-formulaire et groupe d'affichage de votre formulaire dispose également d'une pile décorative. Vous devez donc modifier la pile pour les éléments dont vous ne souhaitez pas afficher les messages d'erreur.

Il y a beaucoup de façons de le faire:

$form->setElementDecorators(array(
    'ViewHelper', 
    'HtmlTag', 
    'Label' 
)); 

Est-ce le chemin à parcourir si vous voulez garder la pile décorateur d'élément par défaut, mais avec le décorateur d'erreur enlevé. Vous pouvez aussi le faire sur une base d'un élément individuel:

$element->setDecorators(array(
    'ViewHelper', 
    'HtmlTag', 
    'Label' 
)); 

Ou lorsque vous ajoutez l'élément:

$form->addElement($type, $name, array(
    'decorators' => $decorators 
)) 
+0

Merci et comment afficher tous les messages d'erreur au-delà de la forme? Actuellement, ils sont ci-dessous. Je pourrais réparer cela via css, mais ce n'est pas correct. :) – Somebody

+0

Je veux dire, comment définir quelque chose comme setPosition pour toutes les erreurs ou même erreur wrapper. J'ai trouvé seulement getPosition. Et ont trouvé, qu'il n'y a que deux options Ajouter et ajouter, mais comment les définir je n'ai pas trouvé. – Somebody

+0

Vous pouvez essayer d'ajouter 'position' => 'append' à votre tableau 'new Zend_Form_Decorator_FormErrors'. – Johrn

Questions connexes