加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

zend-framework – 如何对子表单进行分组

发布时间:2020-12-13 17:58:40 所属栏目:PHP教程 来源:网络整理
导读:我有4个子表单,我希望将其中的2个组合在一起,然后将一些装饰器应用于它们. 这是我到目前为止所拥有的.在每个子表单中,我已经有一些显示组 $this-setSubForms(array( 'sub1' = $sub1,'sub2' = $sub2,'sub3' = $sub3,'sub4' = $sub4)); 我以为我可以做点什么 $
我有4个子表单,我希望将其中的2个组合在一起,然后将一些装饰器应用于它们.

这是我到目前为止所拥有的.在每个子表单中,我已经有一些显示组

$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的文档中找不到任何东西.如果有其他人遇到过这个困境,我想我会在这里发布.

所以基本上我已经弄清楚了.

首先,你创建“空”子表单

$left = new Zend_Form_SubForm();

然后你在这个“子表单”中添加你想要的子表单

$left->setSubForms(array(
   'sub1'  => $sub1,'sub2'  => $sub2
));

你为要添加装饰器的其他子表单执行相同的操作.

$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')),));

谢谢

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读