JQuery bind() 方法无效

JQuery bind() method not working

我做了一些这样的代码 Ajax 给我一个带有 <a href="" class="page-navi page--4">4</a> 的分页栏。 但是绑定和警报不起作用。为什么?

    <script ... >
$(function() {
  $(".page-navi").bind("click",function() {
alert("!!!");
});
$.ajax(
    {
        url: "some url",
        type: "GET",
        success:function(data, status, jqxhr)
        {
            $("#pagination").html(data);
        },
        error: function (request, status, error) {
            console.log(request.responseText);
        }                        
    });
});
</script>

您似乎在调用 ajax 方法来在加载后立即更新您的#pagination 元素。

如果您的 .page-navi 元素在此 #pagination 元素内,您通过绑定附加的事件处理程序将被清除。

移动到里面ajax成功。

我测试了你的代码并且在没有 AJAX 调用的情况下工作正常。 BIND 是一个古老的事件处理程序,我建议您使用 ON。只需将 BIND 替换为 ON。原因是您试图在加载 DOM 元素之前附加事件。我想我的建议会对你有所帮助。