在运行AJAX调用之后,不会执行jquery代码

After running an AJAX call, jquery code does not execute

本文关键字:执行 jquery 代码 运行 AJAX 调用 之后      更新时间:2023-09-26

我有一个使用分页和jQuery和AJAX过滤的网站。在我将链接更改为Javascript链接之前,一切都运行良好。

在主页上,没有使用任何过滤或分页,都能正常工作。在我使用分页或过滤(有效地使用AJAX调用两者)之后,我的JavaScript链接不再工作了。

链接的JavaScript代码是:

$(function(){
    $( ".artikel_box_lk .button" ).click(function( e ) {
        window.open( "/lk/" + $( this ).attr("rel"), "_blank");
    });
});

和分页的代码:

function loadData(page){                   
    loading_show();
    $.ajax
    ({
        type: "POST",
        url: "php/load_data.php",
        data: dataToSend,
        success: function(msg)
        {
            $("#container").ajaxComplete(function(event, request, settings)
            {   
                loading_hide();
                $("#container").html(msg);                          
            });
        }
    });
}

我的猜测是,javascript没有得到AJAX调用上的重新加载,因为只有部分页面被重新加载,但我不确定如果是这种情况,以及如何解决这个问题。

似乎你的javascript在回发后没有加载。尝试在网页上的 pagload 中添加您的函数,如:

function pageLoad()
{
    $( ".artikel_box_lk .button" ).click(function( e ) {
        window.open( "/lk/" + $( this ).attr("rel"), "_blank");
    });
}

执行事件委托

 $( "#container" ).on ("click",".artikel_box_lk .button" ,function( e ) {
        window.open( "/lk/" + $( this ).attr("rel"), "_blank");
    });