【发布时间】:2012-01-04 13:29:17
【问题描述】:
我在按我希望的方式调整表单布局时遇到了一些问题。这里的问题不是修饰文件元素本身,问题在于函数:$file->setMultiFile(3)。我似乎无法在多个文件输入元素之间放置分隔符,导致它们被排成一行。
这就是我创建文件元素的方式:
$oElement = new Zend_Form_Element_File('file');
$oElement->setLabel('File')
->setMultiFile(3)
->setDestination('location on server');
$this->addElement($oElement);
然后我添加装饰器:
$this->getElement('file')->setDecorators(array(
'File',
'Errors',
array(array('td' => 'HtmlTag'), array('tag' => 'td')),
array('Label', array('tag' => 'td')),
array(array('tr' => 'HtmlTag'), array('tag' => 'tr'))
));
当前输出为:
<tr>
<td id="file-label">
<label class="optional" for="file">File</label>
</td>
<td>
<input type="file" id="file-0" name="file[]">
<input type="file" id="file-1" name="file[]">
<input type="file" id="file-2" name="file[]">
</td>
</tr>
我想要的是在输入元素之间有一个<br />,这样它们就不会放在一行上。这可以通过装饰器实现吗?使用 radio/mutliselect/multicheckbox 有一个 setSeparator 函数可以执行此操作,但文件元素似乎不是这种情况。
有人可以帮我吗? 提前致谢,
伊莲
【问题讨论】:
-
用 jQuery 附加它作为快速修复?
-
试图避免使用视图脚本,但我想如果没有其他问题出现,它会做。谢谢。
-
利用视图助手的力量! ;)
标签: php zend-form zend-decorators zend-framework