在javascript中向现有函数注册新的动态创建元素

在javascript中向现有函数注册新的动态创建元素,javascript,listener,Javascript,Listener,我创建了一个新的html元素,并将其插入到一个节点中。但是,由于此原因,它没有在类名“edit expense category”上注册任何侦听器。我在页面加载上注册此类名的代码如下: $(".edit-expense-category").click(function () { // function related stuff }); 我想知道的是,一旦我使用上面的类名动态创建了另一个元素,我如何向侦听器注册这个元素呢?我本来打算建议您使用jQuery的.live,但结果是它被弃用了

我创建了一个新的html元素,并将其插入到一个节点中。但是,由于此原因,它没有在类名“edit expense category”上注册任何侦听器。我在页面加载上注册此类名的代码如下:

$(".edit-expense-category").click(function () { 
  // function related stuff
});

我想知道的是,一旦我使用上面的类名动态创建了另一个元素,我如何向侦听器注册这个元素呢?

我本来打算建议您使用jQuery的
.live
,但结果是它被弃用了。但是,较新的等价物是上的
。像这样使用它:

$( document ).on( events, selector, data, handler );  

// In your specific case it'll look like:
$( document ).on( "click", ".edit-expense-category", { }, function () {
    // function related stuff
});  

关于这一点的更多信息(别忘了查看更新的版本)

谢谢,我不得不使用.live-我使用的框架非常古老,Js版本不支持。关于:(