我想在此表单中为每个添加css类和分区标记。我不知道怎么做。我也可以为标签和输入字段添加类,但不能获取如何添加。
我的表格就像这样
namespace Erp\Form;
use Zend\Form\Form as Form;
class LeadsForm extends Form {
public function __construct($name = null){
parent::__construct('leads');
$this->add(array(
'name' => 'id',
'type' => 'Hidden',
));
$this->add(array(
'name' => 'companyName',
'type' => 'Text',
'attributes' => array(
'class' => 'req'
),
'options' => array(
'label' => 'Company Name',
),
));
$this->add(array(
'name' => 'website',
'type' => 'Text',
'options' => array(
'label' => 'Website',
),
));
它显示如下(源代码)
<form method="POST" name="leads" action="/erp/public/leads/add" id="leads">
<fieldset >
<input type="hidden" name="id" value="">
<label><span>Company Name</span>
<input type="text" name="companyName" class="req" value=""></label>
<label><span>Website</span>
<input type="text" name="website" value=""></label>
但我希望这就像这样
<form method="POST" name="leads" action="/erp/public/leads/add" id="leads">
<input type="hidden" name="id" value="">
<div class="formSep">
<label class="req">Company Name</label>
<input type="text" name="companyName" class="req" value="">
</div>
<div class="formSep">
<label class="req">Website</label>
<input type="text" name="website" value="">
</div>
我该怎么做?
答案 0 :(得分:3)
我假设您正在使用此代码来呈现表单。
$form = $this->form;
$form->prepare();
echo $this->form()->openTag($form);
echo $this->formCollection($form);
echo $this->form()->closeTag();
虽然这可以按预期工作,但对于像你这样的情况来说,它并没有那么灵活。因此,要以您希望的方式在视图文件中呈现表单,必须使用View Helpers并逐个呈现每个表单输入。
$form = $this->form;
$form->prepare();
echo $this->form()->openTag($form);
echo $this->formHidden($form->get("id"));
<div class="formSep">
echo $this->formText($form->get("companyName"));
</div>
<div class="formSep">
echo $this->formText($form->get("website"));
</div>
echo $this->form()->closeTag();