Zend表单 - 可重复使用的装饰器

时间:2011-08-22 11:31:14

标签: zend-framework zend-form

我有一个自定义装饰器如下:

$lang = $this->CreateElement('select', 'lang')
            ->setDecorators(array(
                    array(
                        array('elementDiv' => 'HtmlTag'), 
                        array('tag' => 'div', 'class'=>'lang')
                    )
                )
            )

如何在我的下一个元素中重用这个别名为'elementDiv'的装饰器?

1 个答案:

答案 0 :(得分:1)

$elementDiv = array('elementDiv' => 'HtmlTag');

$this->addElement('select', 'lang')
     ->setDecorators(array(
         $elementDiv,
         array('tag' => 'div', 'class'=>'lang')
     ));

$this->addElement('select', 'lang2')
     ->setDecorators(array(
         $elementDiv,
         array('tag' => 'div', 'class'=>'lang2')
     ));

或者,您可能想要创建custom decorator