Zend framework 如何对子窗体进行分组
我有4个子表单,我想将其中的2个子表单组合在一起,然后对它们应用一些装饰程序 这是我到目前为止所拥有的。w/在每个子窗体中,我已经存在一些显示组Zend framework 如何对子窗体进行分组,zend-framework,zend-form,zend-form-sub-form,Zend Framework,Zend Form,Zend Form Sub Form,我有4个子表单,我想将其中的2个子表单组合在一起,然后对它们应用一些装饰程序 这是我到目前为止所拥有的。w/在每个子窗体中,我已经存在一些显示组 $this->setSubForms(array( 'sub1' => $sub1, 'sub2' => $sub2, 'sub3' => $sub3, 'sub4' => $sub4 )); 我想我可以做一些类似的事情 $set1 = $this->setSubFormDe
$this->setSubForms(array(
'sub1' => $sub1,
'sub2' => $sub2,
'sub3' => $sub3,
'sub4' => $sub4
));
我想我可以做一些类似的事情
$set1 = $this->setSubFormDecorators(array(
'sub1' => $sub1,
'sub2' => $sub2
));
$set1->setDecorator(array('something here'));
$set2 = $this->setSubFormDecorators(array(
'sub3' => $sub3,
'sub4' => $sub4
));
$set2->setDecorator(array('something here'));
显然这根本不起作用
我真的在ZF的文档中找不到任何东西。我想如果有人遇到这种困境,我会把它贴在这里。也许在这种情况下,
addDisplayGroup
也可以?所以基本上我已经解决了
首先,创建“空”子窗体
然后将所需的子窗体添加到此“子窗体”中
对要向其中添加装饰器的其他子窗体执行相同的操作
$right = new Zend_Form_SubForm();
$right->setSubForms(array(
'sub3' => $sub3,
'sub4' => $sub4
));
然后在原始表单中添加这些新的“$left”和“$right”子表单
$this->setSubForms(array(
'left' => $left,
'right' => $right
));
然后,您可以根据需要对“$left”和“$right”子窗体应用装饰程序
因为我想删除封装内部元素的字段集
我的看起来像这样,你对另一个也一样
$left->setDecorators(array(
'FormElements',
array('HtmlTag', array('tag' => 'div')),
));
谢谢没有addDisplayGroup需要元素。我已经弄明白了。谢谢
$this->setSubForms(array(
'left' => $left,
'right' => $right
));
$left->setDecorators(array(
'FormElements',
array('HtmlTag', array('tag' => 'div')),
));