通过jquery向循环中的附加元素添加onclick函数

通过jquery向循环中的附加元素添加onclick函数,jquery,function,loops,onclick,Jquery,Function,Loops,Onclick,现在,我将函数名作为字符串传递给jquery插件,该插件在数据库中循环,为每个记录创建一个新元素,将元素的onclick事件设置为函数名,函数名随记录中的数据一起作为函数的参数提供。这将附加到字符串,并分配给新div的innerhtml,该div在循环完成时附加到dom。最初,我每次都会附加到dom,但速度太慢了 我想做的是将函数本身传递给插件,或者如果用户需要,传递一个匿名函数。但是由于我将div构建为一个字符串,我不确定将传递的函数与每个元素的onclick事件关联的最佳方式 您可以在jqu

现在,我将函数名作为字符串传递给jquery插件,该插件在数据库中循环,为每个记录创建一个新元素,将元素的onclick事件设置为函数名,函数名随记录中的数据一起作为函数的参数提供。这将附加到字符串,并分配给新div的innerhtml,该div在循环完成时附加到dom。最初,我每次都会附加到dom,但速度太慢了


我想做的是将函数本身传递给插件,或者如果用户需要,传递一个匿名函数。但是由于我将div构建为一个字符串,我不确定将传递的函数与每个元素的onclick事件关联的最佳方式

您可以在jquery中使用live函数

为您的div设置一个类,这样它会给出如下内容:

$(".myDiv").live("click", function(){//my function});
如果所有div都是同一个函数,那么就是(a)不要使用字符串,自己构建DOM元素,然后一次性插入它们,或者(b)将
onclick
属性写入字符串并引用全局回调函数。如果您想要更具体的答案,您可能需要发布代码。