@vopross

Как обратиться к элементу при подгрузки контента?

При прокрутки происходит автоматическая подгрузка контента js скриптом.

В LoadDiv происходит подгрузка данных.

<div id="conteiner">

       <!--пхп цикл--!>
       <?php echo $post; ?>
        <div class="like" id="<?php echo $id;  ?>" onclick="like()"></div>

      

        <div id="LoadDiv"></div>

</div>


Js

window.onload = function like(){
    $(".like").click(function() {
        var id = $(this).attr("id");
	    var request = $.ajax({
            url: "like.php",
            type: "POST",
            data: {id : id},
           dataType: "html"
        });
		$('#l'+id).text(Number($('#l'+id).text()) + 1);
		
		
    });
}


Проблема в том что не могу обратится к подгружаемым данным. В чем может быть проблема.
  • Вопрос задан
  • 556 просмотров
Решения вопроса 1
iiiBird
@iiiBird
Пока ты спишь - твой конкурент совершенствуется
обращайся через:
$(document).on("click", ".к чему обращаешься", function() { ... });
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@tevox
Веб-разработчик
Для того, чтобы можно было дальше работать с подгруженными через AJAX данными, нужно в ".ajax" в параметрах указать "async: false" и последующую работу с данными перевести в параметр "success: function(data){ ... console.log(data) ...}".

$.ajax({
    async: false,
    success: function(data){
        console.log(data);
    },
    error: function(){
        console.log("Упс...");
    }
});


Но я бы сделал так:

// Зададим переменную со стандартным значением "false", чтобы потом положить в нее данные
var my_data = false;

// Отправляем запрос
$.ajax({
    async: false,
    success: function(data){
        console.log(data);
        // Помещаем данные в переменную
        my_data = data;
    },
    error: function(){
        console.log("Упс...");
    }
});

// Если значение переменной не равно стандартному, выводим результат в консоль
if(my_data != false){
    console.log("Урашечки-ура!");
    console.log(my_data);
}
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы