【发布时间】:2011-04-08 03:02:33
【问题描述】:
Zend_Form_Element_Radio 的默认装饰器是
<label for="type_id-1"><input type="radio" name="type_id" id="type_id-1" value="1">Pack</label>
label 标签包装了input 标签。相反,我想看起来像
<input type="radio" name="type_id" id="type_id-1" value="1"><label for="type_id-1">Pack</label>
我认为这可能与元素的“标签”有关,但这是不同的。即使使用以下代码,我仍然会得到包装收音机的标签。当我使用这个表单代码时。
public function init()
{
parent::init();
$this->setName('createdomain');
$type_id = new Zend_Form_Element_Radio('type_id');
$type_id->setLabel('Please Choose')
->setRequired()
->setMultiOptions(array('m' => "male", 'f' => 'female'));
$this->addElement($type_id);
$this->setElementDecorators(array(
'ViewHelper',
array('Label',array('placement' => 'APPEND')),
));
}
结果我得到了这个 HTML
<form id="createdomain" enctype="application/x-www-form-urlencoded" action="" method="post"><dl class="zend_form">
<label for="type_id-m"><input type="radio" name="type_id" id="type_id-m" value="m">male</label><br />
<label for="type_id-f"><input type="radio" name="type_id" id="type_id-f" value="f">female</label>
<label for="type_id" class="required">Please Choose</label></dl>
</form>
注意label 标签如何包裹input 标签?
【问题讨论】:
-
你能用 CSS 做吗?
-
我正在尝试使用 jQuery UI 的按钮集,它希望标签跟随输入标签,而不是包含在标签标签中。
标签: zend-framework radio-button zend-form