gpt4 book ai didi

php - Zend_Form + DHTML 内容

转载 作者:行者123 更新时间:2023-12-04 07:10:02 27 4
gpt4 key购买 nike

动态添加的最佳方式是什么新品 dhtml 内容到通过 Zend_Form 生成的表单。例如,假设表单是这样创建的:

class formUser extends Zend_Form {
public function __construct( $options = null ) {
parent::__construct( $options );

$page1 = new Zend_Form_Element_Text( 'page1' );
$page1->setLabel( 'Page 1' );

$submit = new Zend_Form_Element_Submit( 'submit' );
$this->addElements( array( $page1, $submit ) );
}
}

此处表单创建了一个且仅一个名为“page1”的元素, 但是如果我想在 View 中添加一个“添加”按钮来动态生成更多元素怎么办 ,如 page2、page3、page4 等,同时将其与 Zend_Form 集成?

Here is the effect I'm talking about

This isn't me, but he's got the same question and maybe worded it better

就我而言,它实际上是 child 和 parent 的关系。在这个区域周围,一个人可能有 0 或 15 个 child ,我不会皱眉。

谢谢!

最佳答案

我现在没有时间详细介绍编码的细节,但我会这样做:

由于您希望表单的结构(而不​​仅仅是它的数据)是可编辑的,因此您必须实例化它并将其存储在 session 中。

您的 JavaScript 不仅需要生成一些额外的 HTML 标记,还必须向您的服务器发出 Ajax 调用。单击“添加”按钮时以这种方式调用的操作将更改 Zend_Form实例存储在您的 session 中。然后,Ajax 调用可以返回要插入的附加标记或整个表单标记的新版本。

在前一种情况下,由您的 JavaScript 代码确保以浏览器显示与 Zend_Form 一致的方式插入标记。服务器上的表示。在后一种情况下 - 整个表单被返回 - 用户输入必须在 Ajax 调用中传输,否则当表单被新版本替换时它会丢失。

关于php - Zend_Form + DHTML 内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/509112/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com