如何将 Zend_Dojo 表单元素动态添加到 zend_form?

Posted

技术标签:

【中文标题】如何将 Zend_Dojo 表单元素动态添加到 zend_form?【英文标题】:How can I dynamically add a Zend_Dojo form element to a zend_form? 【发布时间】:2010-01-23 19:03:32 【问题描述】:

目前我可以在表单首次加载后动态地将 Zend Form 元素添加到表单中。我通过鼠标单击和一些 ajax 来做到这一点。但是,我想添加具有不同名称的完全相同的元素(基本上我给每个元素一个 id)。但是,当我添加该字段时,它只是像普通字段一样显示,而不是 Dojo'fied。

【问题讨论】:

【参考方案1】:

Dojo 表单元素必须被初始化。这通常发生在当 DOM 准备好时将页面提供给浏览器时。 Dojo 将解析页面并启动表单元素。当您通过 Ajax 获取元素或动态创建它们时,您必须再次启动新元素。不过我记得这有点棘手。

查看这些相关问题:

Cannot create dijits via dojo.NodeList.instantiate DOJO : How do you reinitiate form elements after ajax call? dojo.parser.parse only working first time it's called http://www.dojotoolkit.org/forum/dijit-dijit-0-9/dijit-support/dijit-parse-after-ajax-call-again

【讨论】:

谢谢,我查看了这些并决定我要预加载一些并隐藏它们。看起来那样做起来会很困难。

以上是关于如何将 Zend_Dojo 表单元素动态添加到 zend_form?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Javascript 访问动态表单元素 id

将 jQuery 验证规则添加到动态生成的表单元素时出错

将 JQuery Datepicker 动态添加到表单元素

如何将 dojo 事件添加到表单上的新元素?

如何将 jquery ui 自动完成添加到动态创建的元素?

如何动态添加带有引导表单元素的 div?