试图找到一个解决方案一段时间没有太多运气......
需要呈现一个包含复选框数组的表单,每个复选框都有一个关联的文本框。
给定一个数组数组('Dave'=> 23,'Pete'=> 12,'Si'=> 43);
得到的加价应该产生:
<div>
<label><input type="checkbox" name="user_id[]" id="user_id-1" value="23" />Dave</label>
<label for="job-1">Job:</label><input type="text" name="job[]" id="job-1" />
</div>
<div>
<label><input type="checkbox" name="user_id[]" id="user_id-2" value="12" />Pete</label>
<label for="job-2">Job:</label><input type="text" name="job[]" id="job-2" />
</div>
<div>
<label><input type="checkbox" name="user_id[]" id="user_id-3" value="43" />Si</label>
<label for="job-3">Job:</label><input type="text" name="job[]" id="job-3" />
</div>
完成zend noob所以任何帮助(包括装饰等)
谢谢偷看
答案 0 :(得分:1)
答案 1 :(得分:0)
只需创建一个自定义装饰器,从Zend_Form_Decorator_Abstract扩展并定义函数render,它返回你在里面定义的html,例如你可以这样做:
$html = ''; // some code html
$i = 0;
foreach ($element->getMultiOptions() as $value => $label){
$html .= '<label><input type="checkbox" name="'.$element->getName().'[]" id="'$element->getName()'-'.$i.'" value="'.$value.'" />'.$label.'</label>';
$i++;
}
return $html;