2010-12-04 34 views
2

J'ai un formulaire basé sur Zend_Form.
Lorsque le formulaire n'est pas valide, mes entrées contiennent des données.
Mais si tout est OK, après la soumission du formulaire conains toutes les données.zend framework vide formulaire après soumettre

Je sais comment la forme claire avec l'aide de jQuery.
Mais comment je le fais dans Zend Framework?

Répondre

3

Malheureusement, cela ne fonctionne pas dans ZEND 2. Voir le code ci-dessous pour effacer un formulaire dans ZEND 2

$elements = $form->getElements(); 

foreach ($elements as $element) { 
    if ($element instanceof \Zend\Form\Element\Text) { 
    $element->setValue(''); 
    } 
    // Other element types here 
} 

Credits

+0

Que faire si je veux réinitialiser le formulaire à ses valeurs par défaut, au lieu de simplement les valeurs vides? – Aise

+0

@Aise, créez un nouvel objet de formulaire, en réutilisant votre variable de formulaire d'origine. Comme dans ... '$ form = new YourFormClass();' – Dennis

0

Comme ceci:

$form = new AlbumForm(); 
$request = $this->getRequest(); 
if ($request->isPost()) 
{ 
    $album = new Album(); 
    $form->setData($request->getPost()); 
    if ($form->isValid()) 
    { 
     /* 
     * Process Form 
     */ 
     ... 

     /* 
     * Create new Form 
     */ 
     $form = new AlbumForm(); 
    } 
}