0

我正在尝试从生成到 div 的按钮中捕获事件(由另一个 jQuery 调用提供)。我想知道 jQuery 调用应该在哪里?进入主页面还是进入之前的 jQuery 调用生成的 html?

另外,jQuery 如何处理具有相同名称的对象?

谢谢!

4

3 回答 3

0

如果您正在处理现在或将来退出的对象,则必须使用 live 函数来附加您的事件:

http://api.jquery.com/live/

描述:为现在和将来匹配当前选择器的所有元素附加一个事件处理程序。

如果您有多个与选择器匹配的对象,您将获得一个对象数组

于 2012-09-02T20:02:05.547 回答
0

使用jsFiddle创建一个示例。目前很难说你的问题是什么。

要回答您的第一个问题,您可以在“主页”和“生成的 html”中注册您的事件,具体取决于任务。而且由于没有代码/示例,我无法判断哪个更适合您。

问题“jQuery 如何处理具有相同名称的对象?” 真的没有意义。JQuery 是一个 JavaScript 库,而 JavaScript 与任何其他编程语言一样,每个对象都有一个唯一的名称。也许您的意思是元素类名称,jQuery 将它们视为元素的集合。

于 2012-09-02T21:25:30.307 回答
0

如果要将事件绑定到尚不存在的内容,则可以将其放在生成的 html 中。

像这样:

$("#generatedButton").on("click",function(){
    //do something..
});

或者

您可以将其放在主页中,并将事件绑定到已经存在的更高包装器并单独指定事件目标

像这样:

$("#mainWrapper").on("click", "#generatedButton" , function(){
    //do something..
});

所有这些都使用.on().

于 2012-09-02T21:46:25.260 回答