我有一种形式,我有很多元素。我在许多地方使用表格。我有一个file
的元素,那就是:
$file= new Zend_Form_Element_File('merchantLogo');
$file->setDestination("application_data/merchant/logo/original/");
$file->addValidator('Count', false, 1);
$file->addValidator('Extension', false, 'jpg,png,gif,jpeg');
$file->setDecorators(array('ViewHelper','Errors'));
现在我想问一下,如何解开这个zend形式的任何元素。我想要这个,因为虽然在我的一个动作上我没有使用这个元素,但是这个元素正在创造问题。 那么如何取消任何元素?
答案 0 :(得分:11)
使用Zend_Form::removeElement()
。见http://framework.zend.com/manual/en/zend.form.forms.html#zend.form.forms.elements.methods
实施例
$form->removeElement('merchantLogo');
答案 1 :(得分:4)
这很安静:
$this->removeElement('merchantLogo');
Zend_Form上的公共函数removeElement()获取元素的名称并将其从表单中删除。
请参阅:http://framework.zend.com/manual/en/zend.form.forms.html#zend.form.forms.elements.methods
答案 2 :(得分:3)
1:
$element = new Zend_Form_Element_Text('test');
if ($condition) {
$form->addElement($element);
}
2:
$element = new Zend_Form_Element_Text('test');
$form->addElement($element);
if (!$condition) {
$form->removeElement('test');
}
答案 3 :(得分:0)
$form = $form->remove('merchantLogo'); // or chain to remove ->('anotherElement');
新手注意事项:
将$form
替换为remove(')
方法的返回值以使用更新后的表格。