【发布时间】:2011-10-20 23:36:33
【问题描述】:
我有一个 3 层的表单结构。
有一个主窗体,frmMain(它更像一个容器窗体),它具有子窗体,例如 frmSubFacts。而这些子表单如frmSubFacts都有子表单;例如:frmTabSubCountry。最里面的子表单包含表单元素,例如文本字段。这些在表单级别使用 setBelongsTo 方法进行分组。
代码使用 ZendX_JQuery 跨 2 个制表行呈现这些表单,这样 frmSubFacts 和其他外部子表单位于顶部选项卡内,并且根据用户选择,子子表单(例如 frmTabSubCountry)沿第二个内部选项卡行显示。
表单呈现良好。唯一的问题是以编程方式为最里面的子表单中的字段/元素设置值。
元素字段名称根据其层次结构和关系呈现,因此文本框名称可以是:Facts[Country][county_name]。
但是,如何为该字段分配值?我尝试了以下选项:
$arrFormData['Facts[Country][county_name]'] = 'Singapore';
$Form->populate(array('Facts'=>
array('Country'=> array('country_name'=> 'Singapore'))));
$form->Facts->Country->country_name->setValue('Singapore');
$form->getSubForm('Facts')
->getSubForm('Country')
->getElement('country_name')->setValue('Singapore');
尽管应用程序呈现良好且 POST 操作符合预期,但获取子表单的最后一行在获取“事实”子表单后失败。感谢您的帮助
【问题讨论】:
标签: php jquery zend-form zendx zend-form-sub-form