Javascript Ajax点击功能不支持';加载内容后不能工作

Javascript Ajax点击功能不支持';加载内容后不能工作,javascript,jquery,ajax,Javascript,Jquery,Ajax,我有以下问题。如果我通过ajax生成anhor“load\u more\u btn”,那么单击该函数(带有警报(“test”)的函数)将不起作用。为什么会发生这种情况,如何解决这个问题 <div id="content"></div> <div id="load_more"></div> <script type="text/javascript"> function getPhoto(paramTyp

我有以下问题。如果我通过ajax生成anhor“load\u more\u btn”,那么单击该函数(带有警报(“test”)的函数)将不起作用。为什么会发生这种情况,如何解决这个问题

<div id="content"></div>
<div id="load_more"></div>

        <script type="text/javascript">
        function getPhoto(paramType, param, page){
            $.ajax({
                url: "skrypt.php?paramType="+paramType+"&param="+param+"&page="+page
            }).done(function(data) {                            
                $('#content').html(data);
                var nextpage =page+1;
                $('#load_more').html('<a href="#" id="load_more_btn" data-paramType="'+paramType+'" data-param="'+param+'" data-page="'+nextpage+'"=>Wczytaj więcej</a>');
            });
        }

        $('#load_more_btn').click(function(){
                alert('test');
            });

    </script>

函数getPhoto(paramType,param,page){
$.ajax({
url:“skrypt.php?paramType=“+paramType+”¶m=“+param+”&page=“+page
}).done(函数(数据){
$('#content').html(数据);
var nextpage=第+1页;
$('load#u more').html('');
});
}
$('load#more_btn')。单击(函数(){
警报(“测试”);
});

如果您单击新添加的项目,则不会发生任何事情。这是因为我们在加载时附加了直接绑定的事件处理程序。直接事件仅在调用.on()方法时附加到元素。在这种情况下,加载文档时,“添加更多”按钮不存在


这是因为在加载内容之前分配了单击处理程序

您应该改为尝试使用.on():

$(document).on("click","#load_more_btn", function(){
                alert('test');
});

这会将处理程序分配给文档。并尝试查找“加载更多”\u btn onClick

这是因为您在加载内容之前分配了click处理程序。也许您可以评论一下为什么这样可以解决问题?而且,不要只是链接一个页面,链接会随着时间的推移而改变。这是有效的。非常感谢。你能解释一下吗?我用解释和手册链接更新了我的答案,你可以阅读。@Styphon no it not:cite:“提供选择器时,事件处理程序称为委托。”
$(document).on("click","#load_more_btn", function(){
                alert('test');
});