0

How can I Reinitialize already created Zend Form element object that had some of it's elements remove?

$form = new My_Header() //My_Header class extends Zend_Form
$form->removeElement('id');
$form->removeElement('first_name');

and after some lines i need the $form to have these fields added back.

vlatkorun
  • 127
  • 1
  • 15

1 Answers1

0

At a very simple level, you could try storing the elements and adding them back later. This will obviously lose placement of the form elements, but you can replace them properly if you'd like too.

Example code time:

$form = new My_Header();
$storedElements = array();
$storedElements[] = $form->getElement('id');
$form->removeElement('id');
$storedElements[] = $form->getElement('first_name');
$form->removeElement('first_name');

// do some other stuff here...

// add it back now
foreach ($storedElements as $element) {
    $form->addElement($element);
}

Hope that helps.

Aaron Saray
  • 1,178
  • 6
  • 19