如何在for循环中形成表?

时间:2016-01-11 16:41:09

标签: jquery arrays html-table

这就是循环的样子:

$.ajax({
    type: 'POST',
    ...
    success: function(data) {
        alert(data);
    }
});

结果是:

enter image description here

**

  

但是所需的输出是:

**

商品名称 单价
Sistem Autodownline 100

Karipap Pusing Ayu 8

编辑:

for(var i=0;i < data.length; i++) {
    new_array.push(data[i].catalog_name,data[i].price);
    for (var j=0;j < new_array.length; j++){
        $("#print_receipt").append("<table><tr><th>Item Name</th><th>Unit Price</th></tr><tr>");
        $.each(new_array[j], function( index, value ) {
            $("#print_receipt").append(value);
            if(index == 1) {
                $("#print_receipt").append("</td></tr>");
            }
        });                         
        $("#print_receipt").append("</td></tr></table>");
    }
}

2 个答案:

答案 0 :(得分:0)

您正在编写代码,就好像append接受字符串并简单地附加它们一样。

您希望为需要添加的树的部分创建DOM元素。这样的事情(未经测试):

for (var i = 0; i < data.length; i++) {
  new_array.push(data[i].catalog_name, data[i].price);
  for (var j = 0; j < new_array.length; j++) {
    var $table = $("<table><tr><th>Item Name</th><th>Unit Price</th></tr><tr>");
    $("#print_receipt").append($table);
    var $row = $('tr').appendTo($table);
    $.each(new_array[j], function(index, value) {
      $row.append($('td').html(value));
    });
  }
}

答案 1 :(得分:0)

 $(document).ready(function () {

    data = [["Sistem Autodownline", 100], ["Karipap Pusing Ayu", 8]];

    szData="<table><thead><tr><th>Item name</th><th>Unit Price</th></tr></thead><tbody>";

    for (i = 0; i < data.length; i++)
    {
        szData  =  szData   +    "<tr>";
        for (j = 0; j < data.length; j++)
            {
            szData  =  szData   +  "<td>" + data[i][j] +  "</td>";  
            }
        szData  =  szData   +    "</tr>";
    }

    $("#print_receipt").html(szData)
});