jQuery:为刚刚创建的元素添加事件处理程序

Rom*_*eev 7 jquery

我有一个声明添加一个新的div:

$('#dates').append('<div class="'+classname+'">'+dd+'<br /><span class="month_selector">'+dm+'</span></div>');
Run Code Online (Sandbox Code Playgroud)

但是我不仅要创建元素,还要为它分配('click')动作.当然我可以添加生成的id然后通过这个id访问创建的元素,但我觉得有更美的解决方案.

是吗?

Den*_*ret 11

您不需要添加id,然后让jQuery解析选择器以查找元素.你可以直接这样做:

$('#dates').append(
    $('<div class="'+classname+'">'+dd+'<br /><span class="month_selector">'+dm+'</span></div>')
    .click(function(){
      // handle click
    })
);
Run Code Online (Sandbox Code Playgroud)