@Dmitry2307

Почему не срабатывает событие click после выполнения ajax запроса?

При нажатии на кнопку "Показать еще" выполняется функция
$(".show_more").click(function(){
        var pageStr = $(this).attr("data-page");
        var numStr = $(this).attr("data-num");
        var totalStr = $(this).attr("data-total");
        $.ajax({
            type: "POST",
            url: "core/more.php",
            data: window.location.search+'&pageStr='+pageStr+'&numStr='+numStr,
            dataType: "html",
            cash: false,
            success: function(data) {
                $(".nav_del").remove();
                $(".show_more").before(data);
                var pageStrNew = parseInt(pageStr) + 1
                $(".show_more").attr('data-page', pageStrNew);
                if (pageStrNew >= totalStr) {
                    $(".show_more").remove();
                    $(".nav_del").css("margin-top", "20px");
                }
            }
        })
    });


Которая подгружает товар, работает нормально, но на вновь загруженный товар, не срабатывает событие "Добавление в корзину"

$(".add_cart, #add_cart_content, .analog_add_cart").click(function(){
        var tid = $(this).attr("data-art");
        $.ajax({
            type: "POST",
            url: "/cart/addtocart.php",
            data: "id="+tid,
            dataType: "html",
            cache: false,
            success: function(data) {
                loadcart();
            }
        });
    });


ВОПРОС. Как повесить событие click на данные подгруженные с Ajax?
Возможна ли перезагрузка JS файла, после выполнения Ajax запроса?
Или есть какой-то более эффективный и простой метод?
  • Вопрос задан
  • 132 просмотра
Решения вопроса 1
KickeRocK
@KickeRocK
FrontFinish
$(document).on("click",".show_more",function(){

$(document).on("click",".add_cart, #add_cart_content, .analog_add_cart",function(){
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы