0

ajax呼び出しからいくつかのjsonデータを要求し、すべてのデータをテーブルに挿入します。現在、以下のコードのように、すべてのデータは1行のセルにありますが、テーブルをループして複数の行に分割し、すべての行に4つのセルが含まれる方法はありますか?

<div id="gallery">
    <table id="galleryTable"><tr></tr></table>
</div>


    $.ajax({
      type: "GET",
      dataType: "jsonp",
      cache: false,
      url: linkurl,
      success: function(data){

        paginate = data.pagination.next_url;
        var nextMaxId = data.pagination.next_max_id;
        console.log(nextMaxId);

        for(var i=0; i<15; i++){
          var instaPics = data.data[i].images.low_resolution.url;
          var avatar = data.data[i].user.profile_picture;
          var like = data.data[i].likes.count;
          var comment = data.data[i].comments.count;
          console.log(comment);                  

          $(#galleryTable tr').append('<td><img class="tagPics" src="'+instaPics+'"><a>'+like+"likes"
                                      +'</a><img class="avatar" src="'+avatar+'" height="20" width="20" /><a>'+comment+'</a></img></td>');
        }; 
      }          
    });
4

2 に答える 2

2
$.ajax({
      type: "GET",
      dataType: "jsonp",
      cache: false,
      url: linkurl,
      success: function(data){

        paginate = data.pagination.next_url;
        var nextMaxId = data.pagination.next_max_id;
        console.log(nextMaxId);
        var tr;
        for(var i=0; i<15; i++){
          var instaPics = data.data[i].images.low_resolution.url;
          var avatar = data.data[i].user.profile_picture;
          var like = data.data[i].likes.count;
          var comment = data.data[i].comments.count;
          console.log(comment);  
          if(i % 4 === 0){
             tr = $('<tr></tr>');
             $('#galleryTable').append(tr);
          } 


          tr.append('<td><img class="tagPics" src="'+instaPics+'"><a>'+like+"likes"
                                      +'</a><img class="avatar" src="'+avatar+'" height="20" width="20" /><a>'+comment+'</a></img></td>');
        }; 
      }          
    });
于 2013-01-08T08:33:27.030 に答える
0

Modulo(%)はあなたの友達です!これで始められるはずです...

var row = '';
for(var i=0; i<15; i++) {
    // ...
    if( i > 0 && i % 4 == 0 ) {
        $('#galleryTable tr').append(row);
        row = '';
    }
    row += '<td> ...';
}
$('#galleryTable tr').append(row);
于 2013-01-08T08:33:24.257 に答える