我正在使用 Zend Framework 1 和这个库来集成 Twitter-bootstrap。这是一个很棒的库,但我想为它添加新的装饰器(用于 Zend 表单元素文件),所以它看起来像这里
所以而不是
<input id="image" type="file" name="image">
我想渲染类似的东西(所有样式和javascript)
<span class="btn btn-success fileinput-button">
<i class="icon-plus icon-white"></i>
<span>Add files...</span>
<input type="file" multiple="" name="files[]">
</span>
我是 Zend Framework 的新手,不知道该怎么做。
问题是,我在 library/Twitter/Form.php、public/css 和 public/javascript 中放了什么来使其工作?
或者也许我必须做其他事情?
我尝试在 Form.php 中添加装饰器,但没有应用装饰器(我不记得我到底做了什么)
所以主要问题是,如何在库/Twitter 中为我的元素添加这个装饰器?
编辑:
我正在解决这个问题,并设法使用 jQuery-file-upload-ui.css (不记得文件名)并在 Form.php 中更改 $decorators 代码来显示一个带有“加号”图片的绿色按钮
if($element instanceof Zend_Form_Element_File)
位于
$decorators = array(
"ViewHelper",
array("Errors", array("placement" => "append")),
array("Description", array("tag" => "span", "class" => "help-block")),
array(array("ivanov2" => "HtmlTag"), array("tag" => "i", "class" => "icon-plus icon-white",'openOnly' => true,)),
array(array('close' => 'HtmlTag'), array('tag' => 'i', 'closeOnly' => true)),
array(array("ivanov" => "HtmlTag"), array("tag" => "span", "class" => "btn btn-success fileinput-button")),
array(array("innerwrapper" => "HtmlTag"), array("tag" => "div", "class" => "controls")),
array("Label", array("class" => "control-label")),
array(array("outerwrapper" => "HtmlTag"), array("tag" => "div", "class" => "control-group"))
);
但是我仍然不知道如何放置带有某些内容的元素(例如带有文本):
<span>Add Files..</span>
我也想使用拖放,但不知道如何。