【问题标题】:Zend Framework 1.10: disableLayout and form tagsZend Framework 1.10:disableLayout 和 form 标签
【发布时间】:2015-07-28 06:05:37
【问题描述】:

我正在处理一个在视图页面中显示表单的操作。这是视图的内容(我们称之为 form.phtm):

<?php echo $this->form; ?>

此视图用于显示包含页眉、内容和页脚的完整页面,或者仅用于显示要在显示面板中显示的内容。

页眉和页脚由布局文件提供,内容就是上面这行代码。因此,当它要显示在显示面板中时,我通过传递“ajax = true”参数将其指定给操作,并且该操作禁用布局以便仅输出内容。

所有这些看起来都很好,但是当尝试从显示面板提交表单时,它不起作用。

在检查标记时,我意识到表单打开和关闭标签不存在,但显示了所有字段和按钮。这仅在调用 disableLayout() 后发生(即在完整版页面中输出完整表单)。

我认为我的问题可以概括为“启用布局的 echo $this-&gt;form 与禁用布局的相同代码有什么区别”?

附:我知道我可以手动回显表单标签和元素,我只是想知道是否有一种更简单/更优雅的方式来显示整个表单,而不必担心是否通过 ajax 调用它。

2015 年 5 月 17 日编辑:我使用的是“标签”一词,但我的意思是“标签”(已更正)。

【问题讨论】:

  • 那么,您正在寻找的只是通过 ajax 调用返回呈现的表单?
  • 是的,它几乎可以正常工作。打印表单时,只有
    标记不会呈现。实际上,我只是想知道这是否是禁用布局时的预期行为以及其背后的原因。
  • 好吧,这似乎与 ZF 无关,因为即使自己输入表单标签,它们也不会出现在标记中。检查它是否与错误的 HTML 结构有关,如 stackoverflow.com/questions/5477655/… 中建议的那样
  • 确保查看原始 html 输出,也就是页面源,而不是像 firebug 或 Chrome 的 Inspector 中呈现的任何 HTML。

标签: forms zend-framework


【解决方案1】:

好吧,我的错。

由于我包含文档部分的方式,提到的表单最终嵌套在另一个表单中,因此 Chrome 删除了内部表单标签。

这篇文章给了我线索: tag is not shown when created with php

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-02-14
    • 1970-01-01
    • 2013-01-23
    • 2011-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-25
    相关资源
    最近更新 更多