Edd*_*ark 25 jquery append onclick
我使用以下方法在页面中生成了一些元素.例如,
$("#button"+caption).click(function(){
        var firstDisplay = '<div id="firstDisp'+caption+'"><ul>';
        for(var i=0;i<parents.length;i++){
            firstDisplay=firstDisplay+'<li class="fClick">'+parents[i]+'</li>';
        }
        firstDisplay=firstDisplay+'</ul></div>';
        $(firstDisplay).dialog();
});
当我为'fClass'创建一个onclick事件时,如下所示:
$(".fClick").click(function(){
    alert("hey!");
}); 
它不起作用!但是,如果我把onclick函数放在其他函数中,就在.dialog()之后,它就可以工作了!我有很多以这种方式创建的元素,所以我不能将所有onclick事件放在一个方法中.有没有办法解决?我也遇到了与.append方法相同的问题.
Sel*_*gam 69
将其更改为.on或.delegate基于您正在使用的jQuery版本..
截至jQuery 1.7+
$(document).on('click', '.fClick', function(){ 
    alert("hey!");
}); 
对于较旧的jQuery版本,请使用委托
$(document).delegate('.fClick', 'click', function(){
    alert("hey!");
});