我正在尝试从生成到div中的按钮捕获事件(由另一个jQuery调用提供)。我想知道jQuery调用应该在哪里?是放入主页,还是放入前一次jQuery调用生成的html?
另外,jQuery如何处理具有相同名称的对象?
谢谢!
发布于 2012-09-02 20:02:06
如果您正在处理现在或将来退出的对象,则必须使用live函数来附加事件:
描述:为当前和将来与当前选择器匹配的所有元素附加一个事件处理程序。
如果有多个对象与选择器匹配,则会得到一个对象数组
发布于 2012-09-02 21:25:30
使用jsFiddle创建一个示例。现在很难说你的问题出在哪里。
要回答你的第一个问题,你可以在“主页”和“生成的html”中注册你的事件,这取决于任务。由于没有代码/示例,我不知道哪一个更适合您。
问题“jQuery如何处理同名的对象?”这真的没什么意义。JQuery是一个JavaScript库,而JavaScript和任何其他编程语言一样,每个对象都有一个唯一的名称。也许您指的是元素类名,jQuery将它们视为元素的集合。
发布于 2012-09-02 21:46:25
如果你要把事件绑定到不存在的内容上,你可以把它放在生成的html中。
如下所示:
$("#generatedButton").on("click",function(){
//do something..
});
或
您可以将其放在主页中,并将该事件绑定到已存在的更高包装器,并单独指定事件目标
如下所示:
$("#mainWrapper").on("click", "#generatedButton" , function(){
//do something..
});
所有这些都是使用.on()
实现的。
https://stackoverflow.com/questions/12238647
复制