Javascript jQuery选择器不适用于动态创建的元素

Javascript jQuery选择器不适用于动态创建的元素,javascript,jquery,Javascript,Jquery,我试图选择一个SVG元素,其class属性为“datamap”。它不起作用,因为我正在动态创建svg元素。我如何解决这个问题?或者有没有办法在javascript中选择动态创建的元素?您需要绑定到页面加载时存在的某个元素,然后将其委托出去。一个基本的例子可能是: console.log($('svg.datamap').html()) 动态创建元素时,您可以使用$.addClass()将类添加到元素中,或者使用$.attr()为元素指定id,然后再使用没有意义的id。您无法选择尚不存在的元素,

我试图选择一个SVG元素,其class属性为“datamap”。它不起作用,因为我正在动态创建svg元素。我如何解决这个问题?或者有没有办法在javascript中选择动态创建的元素?

您需要绑定到页面加载时存在的某个元素,然后将其委托出去。一个基本的例子可能是:

console.log($('svg.datamap').html())

动态创建元素时,您可以使用
$.addClass()
将类添加到元素中,或者使用
$.attr()
为元素指定id,然后再使用没有意义的id。您无法选择尚不存在的元素,也无法获取不存在的元素的内容。我是说真的,你认为这会怎么样?既然您接受了建议使用事件委派的答案,即使您根本没有提到事件,我假设这是您的原始问题,在这种情况下,它是重复的。如果这是针对d3.js库DataMaps的,您应该将此逻辑放在DataMaps提供的
done
处理程序中。
$('body').on('click','svg.datamap',function() {
    //do something with svg.datamap
});