- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
element->getLabel())) : ?> formLabel($th-6ren">
我将这个 ViewScript 用于我的标准表单元素:
<div class="field" id="field_<?php echo $this->element->getId(); ?>">
<?php if (0 < strlen($this->element->getLabel())) : ?>
<?php echo $this->formLabel($this->element->getName(), $this->element->getLabel());?>
<?php endif; ?>
<span class="value"><?php echo $this->{$this->element->helper}(
$this->element->getName(),
$this->element->getValue(),
$this->element->getAttribs()
) ?></span>
<?php if (0 < $this->element->getMessages()->length) : ?>
<?php echo $this->formErrors($this->element->getMessages()); ?>
<?php endif; ?>
<?php if (0 < strlen($this->element->getDescription())) : ?>
<span class="hint"><?php echo $this->element->getDescription(); ?></span>
<?php endif; ?>
</div>
Exception caught by form: No file decorator found... unable to render file element
'decorators' => array(
array('File'),
array('ViewScript', array('viewScript' => 'form/field.phtml'))
)
<input type="hidden" name="MAX_FILE_SIZE" value="8388608" id="MAX_FILE_SIZE" />
<input type="hidden" name="UPLOAD_IDENTIFIER" value="4b5f7335a55ee" id="progress_key" />
<input type="file" name="upload_file" id="upload_file" />
<div class="field" id="field_upload_file">
<label for="upload_file">Upload File</label>
<span class="value"><input type="file" name="upload_file" id="upload_file" /></span>
</div>
$this->addElement('file', 'upload_file', array(
'disableLoadDefaultDecorators' => true,
'decorators' => array('File', array('ViewScript', array(
'viewScript' => '_form/file.phtml',
'placement' => false,
))),
'label' => 'Upload',
'required' => false,
'filters' => array(),
'validators' => array(array('Count', false, 1),),
));
<?php
$class .= 'field ' . strtolower(end(explode('_',$this->element->getType())));
if ($this->element->isRequired()) {
$class .= ' required';
}
if ($this->element->hasErrors()) {
$class .= ' errors';
}
?>
<div class="<?php echo $class; ?>" id="field_<?php echo $this->element->getId(); ?>">
<?php if (0 < strlen($this->element->getLabel())): ?>
<?php echo $this->formLabel($this->element->getFullyQualifiedName(), $this->element->getLabel());?>
<?php endif; ?>
<span class="value"><?php echo $this->content; ?></span>
<?php if ($this->element->hasErrors()): ?>
<?php echo $this->formErrors($this->element->getMessages()); ?>
<?php endif; ?>
<?php if (0 < strlen($this->element->getDescription())): ?>
<p class="hint"><?php echo $this->element->getDescription(); ?></p>
<?php endif; ?>
</div>
最佳答案
答案是相对简单的。您需要做的就是首先指定 File 装饰器,为文件输入创建一个特定的 View 脚本,并在 viewScript 装饰器参数中为放置指定 false,这将有效地将 File 装饰器的输出注入(inject)到 viewScript 装饰器中,例如
$element->setDecorators(array('File', array('ViewScript', array('viewScript' => 'decorators/file.phtml', 'placement' => false))));
<label for="<?php echo $this->element->getName(); ?>" class="element <?php if ($this->element->hasErrors()): ?> error<?php endif; ?>" id="label_<?php echo $this->element->getName(); ?>">
<span><?php echo $this->element->getLabel(); ?></span>
<?php echo $this->content; ?>
<?php if ($this->element->hasErrors()): ?>
<span class="error">
<?php echo $this->formErrors($this->element->getMessages()); ?>
</span>
<?php endif; ?>
</label>
<label for="photo" class="element" id="label_photo">
<span>Photo</span>
<input type="hidden" name="MAX_FILE_SIZE" value="6291456" id="MAX_FILE_SIZE">
<input type="file" name="photo" id="photo">
</label>
关于zend-framework - 如何在 Zend_Form 文件元素上使用 ViewScripts?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2143462/
我有一个从 Zend_Form 扩展而来的表单。我将表单放入这样的 ViewScript 装饰器中: $this->setDecorators(array(array('ViewScript', ar
我将 Zend_Form 与 ViewScript 装饰器一起使用。此表单将用于管理两种相当简单类型的对象,但表单很大,所以我希望有一个单一的表单/处理功能。 所以我有这个: class GameMa
我将这个 ViewScript 用于我的标准表单元素: element->getId(); ?>"> element->getLabel())) : ?> formLabel($th
我在解决如何在 Zend Framework 中使用自定义表单时遇到了一些问题。 我遵循了各种指南,但似乎都没有。什么都没有被渲染。 这是我尝试使用的代码位(下面的所有代码都在默认模块中)。我已将代码
我正在尝试使用 ViewScript 在表单之前显示所有表单错误。这是我目前尝试在我的 ViewScript 中使用的代码: formErrors($this->element->getMessag
我有一个带有复选框的 zend_form: $horz = new Zend_Form_Element_Checkbox('horizontal'); $horz->setLabel('Display
我想使用 View 脚本来呈现我的 zend 表单,因为它似乎是最好的方法 在仍然使用 Zend_Elements 类的同时控制表单的布局/设计。 在 View 脚本中,我使用 $this->elem
我有一个使用 View 脚本使用 zend 构建的表单。我认为通过使用 View 脚本,我可以消除所有 dd 和 dt 并能够在表单脚本文件 (patientScriptForm.phtml) 的形式
我正在为我们的应用程序创建一个显示对象库。他们在各种 View 中呈现许多常见对象(用户、对话、消息等)的 html。我所说的 View 是指对象可以使用不同的标记吐出自身的不同“缩放级别”。 一些显
当我尝试做类似的事情时 element->mailCiteCheck?> 什么都没有显示。 但是,当我这样做时: element->mailCiteCheck);?> 我得到: object(Zen
我是一名优秀的程序员,十分优秀!