提醒javascript生成的div id

时间:2012-09-22 13:12:55

标签: javascript jquery html

我用.append()方法生成了一些div。

代码看起来像这样:

$("#someDiv").prepend("<div id='someId' class='myClass'></div>"):
$("#someDiv").prepend("<div id='someId2' class='myClass'></div>"):

效果很好,现在,我想使用divs id。

我正试图这样做:

$(".myClass").click(function(){
    alert($(this).attr('id'));
})

但是,它不起作用,请帮助我。

2 个答案:

答案 0 :(得分:4)

如果元素是动态生成的,您可能需要将事件委托给绑定处理程序时实际存在的元素,如:

$(function() {
    $("#someDiv").on("click", ".myClass", function(){
        alert(this.id);
    });
});

你需要用分号替换前面的冒号才能使它们起作用。

FIDDLE

答案 1 :(得分:0)

问题可能是因为在实际添加div之前将click事件绑定到“myClass”。尝试将click事件代码放在代码之后,以添加像此

这样的新div
$("#someDiv").prepend("<div id='someId' class='myClass'></div>"):
$("#someDiv").prepend("<div id='someId2' class='myClass'></div>"):

$(".myClass").click(function(){
    alert($(this).attr('id'));
})