在 Zend Framework 2 中将循环中的元素添加到 Zend Form
Adding elements from loop to Zend Form in Zend Framework 2
向 Zend 2 表单添加元素时,
foreach($headers as $column)
{
$checkbox = new Element\Checkbox('checkbox');
$checkbox->setLabel($column . "");
$checkbox->setUseHiddenElement(true);
$checkbox->setCheckedValue("true");
$form->add($checkbox);
}
我运行陷入了只添加最后一个元素的问题。通过逐步执行代码,我知道它是 运行 循环多次,但 Zend Form 的 add()
代码似乎只是映射最后一个元素而不是添加所有元素。做这样的事情最好的方法是什么?
您需要为每个元素指定一个唯一的名称,而不仅仅是 'checkbox'。
试试这个:
$checkbox = new Element\Checkbox($column);
向 Zend 2 表单添加元素时,
foreach($headers as $column)
{
$checkbox = new Element\Checkbox('checkbox');
$checkbox->setLabel($column . "");
$checkbox->setUseHiddenElement(true);
$checkbox->setCheckedValue("true");
$form->add($checkbox);
}
我运行陷入了只添加最后一个元素的问题。通过逐步执行代码,我知道它是 运行 循环多次,但 Zend Form 的 add()
代码似乎只是映射最后一个元素而不是添加所有元素。做这样的事情最好的方法是什么?
您需要为每个元素指定一个唯一的名称,而不仅仅是 'checkbox'。
试试这个:
$checkbox = new Element\Checkbox($column);