Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Collections 如何在ZF2中的表单集合上使用setAttribute?_Collections_Zend Framework2 - Fatal编程技术网

Collections 如何在ZF2中的表单集合上使用setAttribute?

Collections 如何在ZF2中的表单集合上使用setAttribute?,collections,zend-framework2,Collections,Zend Framework2,我还没有找到任何将Zend Framework 2表单集合的字段属性设置为的文档。我可以这样设置单个输入字段的值: $form->get('title')->setAttribute('value',$value) 我搞不懂的是如何设置集合的值 $form->get('sample\u collection')返回Zend\form\Element\collection对象 似乎我需要更深一层,选择特定字段,以便在其上使用->setAttribute 提前感谢您帮助解决此问题。将表单集合用作数组

我还没有找到任何将Zend Framework 2表单集合的字段属性设置为的文档。我可以这样设置单个输入字段的值:

$form->get('title')->setAttribute('value',$value)

我搞不懂的是如何设置集合的值

$form->get('sample\u collection')
返回Zend\form\Element\collection对象

似乎我需要更深一层,选择特定字段,以便在其上使用
->setAttribute


提前感谢您帮助解决此问题。

将表单集合用作数组:

$elements = $form->get('sample_collection');
foreach($elements as $element){
    $element->setAttribute('value', $value);
}

我在这方面遇到了一些麻烦,我能够访问集合中的字段集的唯一方法是使用以下内容。(如果集合有多个字段集,则必须在foreach循环中添加If语句才能获得所需的字段集。)

我希望下面的方法能奏效,但事实并非如此。我不确定这是Zend框架中的错误还是我做错了什么。

$collection = $form->get('name_of_collection');
$fieldset = $collection->get('name_of_fieldset');
$element = $fieldset->get('name_of_element');
如果您只想访问字段集中而不是集合中的单个元素。以下几点对我很有效

$fieldset = $form->get('name_of_fieldset');
$element = $fieldset->get('name_of_element');
$element->setAttribute('id', 'name_of_element');

我希望这能对某人有所帮助。

我想这会让我更亲近。似乎我需要将$元素返回到$form对象中<代码>$form->add($element)只复制输入字段而不添加值。
$fieldset = $form->get('name_of_fieldset');
$element = $fieldset->get('name_of_element');
$element->setAttribute('id', 'name_of_element');