根据这篇文章:Zend Framework 2 - Form Element Decorators,我已经尝试过iroybot的解决方案(感谢他)并且它有效。 但是出现了新的问题。详情如下:
在FormCollection.php(View Helper)的render方法中,我抛出这样的对象:
<?php
namespace Cust\View\Helper;
use Zend\Form\ElementInterface;
use Zend\Form\View\Helper\FormCollection as BaseFormCollection;
class FormCollection extends BaseFormCollection
{
public function render(ElementInterface $element)
{
return sprintf('<table class="table table-condensed">%s</table>',parent::render($element));
}
}
并且在FormElement.php(View Helper)的render方法中,我抛出:
<?php
namespace Cust\View\Helper;
use Zend\Form\ElementInterface;
use Zend\Form\View\Helper\FormElement as BaseFormElement;
class FormElement extends BaseFormElement
{
public function render(ElementInterface $element)
{
$req = '';
if($element->getOption('required')){
$req = 'required';
}
return sprintf('<tr><td>%s</td><td>%s</td> </tr>',$element->getLabel(),parent::render($element));
}
}
并且表格在表格中完美呈现。但在表格之前,标签显示在标签标签中。所以标签显示两次,第一次在span标签中,第二次在表格的行中......
我不知道如何解决这个问题。
请给我建议.. 感谢
bestregards