2

我有很多活动,例如

$('.hidefile').click(function (event) {

在页面加载和某些条件下,我使用 ajax 获取某个 div 的 html 并用 .html(htmlstring) 填充它。我花了很长时间,但我注意到当我这样做时这些事件不起作用。我如何用 html 填充 div 并让 jquery 事件使用它?

4

2 回答 2

13

使用以下方法将您的点击事件(或其他)绑定到您的元素live

$('.hidefile').live("click", function (event) {...

当您使用 ajax 替换元素时,它们会丢失其事件处理程序。您可以在success用于替换这些元素的特定 ajax 方法的回调中显式地重新绑定它们,或者使用实时处理程序,这将:

将处理程序附加到与当前选择器匹配的所有元素的事件,现在或将来。

于 2010-03-10T00:49:50.233 回答
0

你如何附加点击事件。您应该在 document.ready 事件中执行此操作,以确保 DOM 已加载。此外,根据 karim79 的建议,您应该使用 live 功能来确保事件持续存在。

于 2010-03-10T01:05:39.937 回答