在表格中的某个列之后添加新行

时间:2011-11-10 07:55:24

标签: jquery

真的需要我在这里挣扎,但无济于事......开始拉我的头发。好吧,这是我从DB获取原始数据的情景,我想在桌子上显示。

但我的问题是如何在4列中显示结果并且在列= 4之后创建新行直到记录结束...我知道如何使用模数但在Jquery中使用PHP .. \ 0 /我现在一直在奋斗......

这是我的尝试

 $.ajax({type :'GET',url : 'getalbums.php',dataType : 'json',
            success : function(data){
                $.each(data, function(i,item){

                    var lendata = data.length;
                    var columns = 2;

                    for(var i=0;i<lendata;i++){
                        if(i % columns == 0) {
                            $("<tr>").appendTo("#tablealbumphotos");    
                        }
                        $("<td>YESSSS</td>").appendTo("#tablealbumphotos");
                        if((i % columns) == (columns - 1) || (i + 1) == lendata) {
                            $("</tr><tr><td>YESSSS</td></tr>").appendTo("#tablealbumphotos");
                        }
                    }

                        });

                    }
                    ,error : function(XMLHttpRequest, textStatus, errorThrown) {

                    }
                });

这是我的HTML

<table id="tablealbumphotos" class="tblphotos">
<!-- display the resutl here in grid format -->        

</table>

希望有人能告诉我如何去做它......真的需要帮助..TQ

==================================的 EDITT ===== ======================================

感谢您回复@ olivieradam666

你能不能通过这些陈述更加精力充沛“你的服务器应该向你发送一个包含4个字段的nbRows对象数组(每列1个)。”另外一件事是你提供的代码将在网格中分配结果,而不管数据的总长度如何:

col1 col2 col3 col4
col5 col6 col7 col8
col9 col10 undefined undefined

假设总记录为10,列= 4

col1 col2 col3 col4
col5 col6 col7 col8
col9 col10

任何提示tq

1 个答案:

答案 0 :(得分:2)

你可以这样做:

success : function(data){
  var lendata = data.length;
  var columns = 2;

  for (var row = 0; row < lendata / columns; row++) {
    var tr = $('<tr>').appendTo("#tablealbumphotos");
    for (var i = 0; i < columns; i++) {
      tr.append($("<td>YESSSS</td>"));//here you should use data[row*columns + i]
    }
  }
}