如何将 dojo 事件添加到表单上的新元素?
Posted
技术标签:
【中文标题】如何将 dojo 事件添加到表单上的新元素?【英文标题】:How to add dojo event to a new elements on a form? 【发布时间】:2014-08-14 21:20:59 【问题描述】:我有一个表格,所以每个表格都有自己的删除链接,我用JS动态添加问题,我有以下dojo功能来使删除链接工作......
dojo.ready(function()
dojo.query(".delete-link").onclick(function(el)
if(confirm("Really delete?"))
......
);
);
该功能正常工作,但是当我添加更多问题(使用JS)时,新问题在删除链接上没有事件,有什么想法可以解决吗?
【问题讨论】:
【参考方案1】:问题是点击事件被绑定到所有在页面加载时具有“delete-link”类的链接。当您通过 JS 创建新元素时,它不会自动绑定到该函数,因为该链接在页面加载时不存在。您需要在文档级别绑定链接,以便添加链接时自动绑定。
改为这样绑定:
on(document, ".delete-link:click", function())
这相当于 jQuery 的 .live() 函数。
请注意,您必须在模块 (dojo/on) 上要求 dojo
【讨论】:
以上是关于如何将 dojo 事件添加到表单上的新元素?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 zend dojo 表单中添加 javascript 函数?