2012-01-03 52 views
0

发生什么事是我有一个需要使用ajax调用刷新的标签列表。如何序列化使用jQuery动态加载的元素?

我清理包含标签的<ul>
随着阿贾克斯响应我填充<ul><li>的标签附加他们.append()
在我的浏览器中一切都如预期显示,新标签在那里。
然后,我点击一个保存按钮,调用一系列功能,并用这些新功能尝试创建serializeArray()功能,但它不起作用。

所有这一切的逻辑是正常的,因为它与默认标签一起工作,只有当标签用jQuery刷新时我才能执行此操作。
我已经检查过刷新标签的格式与默认标签相同。

请帮助。
只有一件事我不能安装更多的插件。
我的jQuery版本是1.4.2
感谢您的帮助。

+0

确保您的DOM在AJAX调用之前和之后看起来完全相同(仅适用于不同的文本节点),还要查看控制台是否有错误。 – 2012-01-03 21:01:48

回答

0

如果你是说动态刷新标签后,不执行事件,比如点击或不工作比你将不得不在处理事件使用.live() 。例如,

$("li").live("click",function(){ 

}); 
0

.serializeArray()docs适用于表单元素。

你确定你正在重建这些吗? (他们可能被隐藏,位于<ul>结构外)

0

您的DOM更新,所以您需要在ajax加载后重新绑定动作。您可以使用.live()函数自动重新绑定操作,您也可以在回调ajax时使用.bind()