php - 向 Zend Forms 添加一些 html

标签 php zend-framework zend-form

我正在寻找一段简单的代码,可以让我将以下 html 添加到我的 zend 表单中:

<div id="wmd-button-bar" class="wmd-panel"></div>

就是这样,它需要在表单中的“方法”元素之上,但仅此而已。对于这样一个简单的操作,我找不到任何不涉及我学习火箭科学(即 Zend Decorators)的方法。

最佳答案

目前我能想到的唯一方法是向表单添加一个虚拟元素并删除除具有您在问题中指定的属性的“HtmlTag”之外的所有装饰器。删除装饰器意味着不会呈现实际元素 - 只会呈现 HtmlTag 装饰器。

所以假设你的表单是 $form:

$form->addElement(
    'hidden',
    'dummy',
    array(
        'required' => false,
        'ignore' => true,
        'autoInsertNotEmptyValidator' => false,
        'decorators' => array(
            array(
                'HtmlTag', array(
                    'tag'  => 'div',
                    'id'   => 'wmd-button-bar',
                    'class' => 'wmd-panel'
                )
            )
        )
    )
);
$form->dummy->clearValidators();

请注意,您要阻止对元素进行任何验证。这只是一种方式 - 可能还有其他方式。

输出:

<div id="wmd-button-bar" class="wmd-panel"></div>

有个好article describing decorators .

关于php - 向 Zend Forms 添加一些 html,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2566432/

相关文章:

php - 表单中的 float 验证

javascript - 创建 json 数组并将其写入文件

php - 没有任何键的多维数组值打印

php - 如何通过从表单获取变量来插入 pdo?

php - 通过 URL 显示 PHP 图像

php - 如何让这个 Filter 在这个 Validator 之后运行

php - 发送电子邮件时是否需要换行?

php - 通用编程 : How to implement model logic in MVC?

zend-framework - Zend 表单 - 两行元素标签

php - Zend 框架 : Setting decorators and labels - should this be done in the view or the form class?