我正在寻找一种方法,我可以在表格中添加我的zend表单元素,我尝试了下面的方法,但它不起作用:我希望这个元素位于它下面的表格中。下面的示例图片
$name2 = new Zend_Form_Element_Text('search');
$name2->setLabel('Search Enterprise Name:');
$name2->addValidator('NotEmpty')
->setDecorators(array(
'FormElements',
array('HtmlTag', array('tag' => 'table', 'id' => 't1')), 'Form',
));
<div class="col-md-6" style="margin-left: 0;">
<table class='spreadsheet dataTable' cellpadding='0' cellspacing='' id="t1">
<thead>
<tr role="row">
<th>ENTER SERVICE PROVIDER USED</th>
</tr>
</thead>
</table>
<button type="button" onclick="alert('I work!')">Click Me!</button>
</div>
提前致谢
答案 0 :(得分:1)
如果我正确理解了问题,您可以将项目添加到视图中
以Application_Form_Toto
形式声明您的项目。
在您的行动中,在视图中声明您的表单
$form = new Application_Form_Toto();
$this->view->form = $form;
在HTML(您的观点)中调用您的元素
<table>...<tr>...<td><?php echo $this->form->search;?></td>...</tr>...</table>
答案 1 :(得分:0)
如果您只想从表单文件中检索单个元素,那么
class Form_Test() {
public function init() {
$name2 = new Zend_Form_Element_Text('search');
$name2->setLabel('Search Enterprise Name:');
$name2->addValidator('NotEmpty')
->setDecorators(array(
'FormElements',
array('HtmlTag', array('tag' => 'table', 'id' => 't1')), 'Form',
));
}
}
在控制器文件中:
$form = new Form_test();
$this->view->form = $form;
在视图文件中,您只能将单个元素称为
<table>...<tr>...<td><?php echo $this->form->getElement("search");?></td>...</tr>...</table>
此外,如果您不希望从装饰器控制您的设计,您只需在表单中调用removeDecorator()并使用此方法从视图本身调整您的设计。