我有一个表格,我想动态添加一行。这部分工作正常,我使用jQuery插入新行。问题是,该行包含两个“编辑”和“删除”链接,这些链接附加到Colorbox弹出窗口。现有的行可以正常使用Colorbox,但是新行将两个链接都附加到“新用户”Colorbox,而不是“适当”的“编辑”或“删除”弹出窗口。
另一个奇怪的行为是,一旦您点击任何旧链接,链接就会正确附加。重新创建的步骤:
我试图在http://pastebin.com/i8n3t2Yt创建最简单的测试用例。如果你想在本地机器上运行它,你必须在http://colorpowered.com/colorbox/下载Colorbox JS。
答案 0 :(得分:0)
听起来,将事件附加到先前行的代码之后不会被执行到新创建的代码。您需要显式重新运行代码或将回调附加到添加新行时通知的事件。
[编辑看代码]
好的,我刚刚审核了您的代码,情况确实如此。你正在使用运行一次的'ready'方法然后就是这样 - 之后不再触发它。所以任何新节点都没有连接回调。
答案 1 :(得分:0)
因为我使用.clone()创建了新行,所以它没有克隆附加事件。克隆有一个可选参数.clone( [withDataAndEvents] ),我之前默认为默认但在1.6中更改,我相信。我认为,由于Colorbox使用.live()来附加事件,我不需要为 [withDataAndEvents] 指定true,但显然我确实需要。