2017-02-20 7 views
0

Привет, ребята, я пытаюсь отправить данные из цикла в элемент div, чтобы я мог показывать его по одному. но когда я пытаюсь отправить данные, он просто показывает все значения вместе, что я могу сделать?Пытается добавить данные в новый div каждый раз, когда цикл цикла ajax succes завершается в codeigniter

вот мой код

<script type="text/javascript"> 
    $(document).ready(function(){ 
     $(window).scroll(function(){ 
      var lastID = $('.load-more').attr('lastID'); 
      if ($(window).scrollTop() == $(document).height() - $(window).height() && lastID != 0){ 
       jQuery.ajax({ 
        type:'POST', 
        url:'<?php echo base_url("user/get_all_post"); ?>', 
        data: "id=" + lastID, 
        dataType: 'json', 
        beforeSend:function(html){ 
         $('.load-more').show(); 
        }, 
        success:function(data){ 
         var ParsedObject = JSON.stringify(data);    
         var json = $.parseJSON(ParsedObject); 
         $PostId=json[4]['id']; 
         for(i=0;i<5;i++) 
         { 
          var post_status = json[i]['status']; 
          var status_image = json[i]['status_image']; 
          var multimage = json[i]['multimage']; 
          alert(post_status); 
          $("#post_status").show(); 
          $("#status_data").append(post_status); 
          $("#post_status").hide(); 
         } 
         $('.load-more').attr('lastID', $PostId); 
        } 
       }); 
      } 
     }); 
    }); 
</script> 

но это просто добавить данные вместе позвольте мне показать вам

image for status updating

что я могу сделать, чтобы добавить Div каждый раз, когда значение проходит через в петля.

это HTML, что я хочу, чтобы добавить в каждом DIV

<div class="post_status" id="post_status" style=" margin: 20px 50px 0px 40px; "> <a href="#" ><?php echo img($user_image); ?></a><a href=""><?php echo $uname; ?></a> <div class="status_post" id="status_data"></div> </div> 
+0

Дайте нам HTML, который должен быть добавлен. –

ответ

1

Вы должны приложить все генерируется HTML в соответствующий контейнер:

$('<div class="post_status" id="post_status" style=" margin: 20px 50px 0px 40px; ">' + 
    '<a href="#"><img src="'+status_image+'"></a><a href="">'+user_name+'</a>' + 
    '<div class="status_post" id="status_data">'+ post_status + '</div></div>') 
.appendTo("#the-comments-container"); 

Вам нужен user_name переменная, хотя.

+0

Я пробовал ваш метод, но он дал мне ошибку «SyntaxError: ожидаемое выражение, получил« <[Узнать больше] »@TahaPasku –

+0

также мой код здесь $ (" # status_data "). Append ('

'+''+ +''+''+ +''+'
'+post_status+'
' + '
'); –

+0

вам нужно добавить кавычки вокруг этого только в методе результата ajax: ' 'вот почему он дает ошибку. он должен быть похож на «... « + »" + '' ... ' –

0
$("#status_data").append('<div>'+post_status+'</div>'); 
+0

Это правильно, но мне нужно добавить div, у которого есть изображение и имя пользователя каждый раз, когда я добавляю данные. –

+0

+0

это мой div, который содержит изображение и имя пользователя. @Vikram Singh –

0

Если я правильно понял, Вы также можете дублировать существующий DIV с помощью этого метода - How can i duplicate a div onclick with javascript?

Append новой информации дублируется DIV, А затем вставить новый элемент DIV на страницу.

Что-то вроде этого:

var yourDiv = document.getElementById('yourDiv'); 
var duplicatedDiv = Duplicate(yourDiv); 
duplicatedDiv.innerHTML = post_status; 
$("#divContainer").append(duplicatedDiv); 
+0

показывает ошибку, что дубликат не определен –

+0

@ Химаншу Голый, да, вам нужно определить Дублировать себя. вы можете увидеть пример для него в ссылке, которую я отправил. – Shtut