Javascript 使用jQuery从数组2维度创建表

Javascript 使用jQuery从数组2维度创建表,javascript,jquery,html-table,Javascript,Jquery,Html Table,我想用JSON中数组2维的值创建表。这是我写的代码: 数据 var data = {"ver[ {"0":"1","id_pemasang":"1","1":"1","id_jenis_pemasang":"1","2":null,"npwp":null,"3":"Yos Sudarso","nama":"Yos Sudarso","4":"Perumahan Griya Perwita No.10","alamat":"Perumahan Griya Perwita No.10","

我想用JSON中数组2维的值创建表。这是我写的代码:

数据

 var data = {"ver[
    {"0":"1","id_pemasang":"1","1":"1","id_jenis_pemasang":"1","2":null,"npwp":null,"3":"Yos Sudarso","nama":"Yos Sudarso","4":"Perumahan Griya Perwita No.10","alamat":"Perumahan Griya Perwita No.10","5":"Yogyakarta","kota":"Yogyakarta","6":"0274-541056","telepon":"0274-541056","7":"08134570378","handphone":"08134570378","8":"0","diskon":"0"},
    {"0":"2","id_pemasang":"2","1":"2","id_jenis_pemasang":"2","2":"34.081.203.1-342.000","npwp":"34.081.203.1-342.000","3":"CV. Prima Agung","nama":"CV. Prima Agung","4":"Jl. Cenderawasih No.72 Warungboto","alamat":"Jl. Cenderawasih No.72 Warungboto","5":"Yogyakarta","kota":"Yogyakarta","6":"0274-878906","telepon":"0274-878906","7":null,"handphone":null,"8":"5","diskon":"5"},
    {"0":"3","id_pemasang":"3","1":"2","id_jenis_pemasang":"2","2":null,"npwp":null,"3":"PT. Tampil Jaya","nama":"PT. Tampil Jaya","4":"Jl. Alamanda No.3","alamat":"Jl. Alamanda No.3","5":"Yogyakarta","kota":"Yogyakarta","6":"0274-552233","telepon":"0274-552233","7":null,"handphone":null,"8":"20","diskon":"20"}
 ]};
html

<table class="table table-striped table-bordered table-data-omset">
     <tbody></tbody>
</table>

jQuery

var tableOmset = $('table.table-data-omset');
var tbodyTableOmset = tableOmset.find('tbody');
var rowTbodyTableOmset = '<tr></tr>';

for(var a=0; a<data.ver.length; a++){
    tbodyTableOmset.append(rowTbodyTableOmset);                       
    for(var b=0; b<5; b++){
        if(data.ver[a][b] == null){
             data.ver[a][b]= '';
        }
        tbodyTableOmset.find('tr').append('<td>'+data.ver[a][b]+'</td>');
     }
 }
var tableOmset=$('table.table-data-omset');
var tbodyTableOmset=tableOmset.find('tbody');
var rowTbodyTableOmset='';

for(var a=0;a在
for
循环中,使用
trTableOmset+=
创建字符串中的表元素,而不是使用
tbodyTableOmset.append(trTableOmset);
完成了

它应该是什么样子:

var tableOmset = $('table.table-data-omset');
var tbodyTableOmset = tableOmset.find('tbody');
var trTableOmset = '';
for(var a=0; a<data.ver.length; a++){
    trTableOmset += '<tr>'  ;                    
    for(var b=0; b<18; b++){          // 5 or 18 ?
        if(data.ver[a][b] === null){
             data.ver[a][b]= '';
        }
        trTableOmset += '<td>'+ data.ver[a][b] +'</td>';
     }
    trTableOmset += '</tr>' ;
 }
tbodyTableOmset.append(trTableOmset);
JS

function ToTable(dataArray)
{
    html = '<table>'; 
    var len = dataArray.length;
    for(var i = 0; i < len; i++){
        html += '<tr>'; 
        for(var key in dataArray[i]){
            html += '<td>' + dataArray[i][key] + '</td>'; 
        }
        html += '</tr>';
    }
    html += '</table>'; 
    return html; 
}

data = {
    ver: [
        {"0":"1","id_pemasang":"1","1":"1","id_jenis_pemasang":"1","2":null,"npwp":null,"3":"Yos Sudarso","nama":"Yos Sudarso","4":"Perumahan Griya Perwita No.10","alamat":"Perumahan Griya Perwita No.10","5":"Yogyakarta","kota":"Yogyakarta","6":"0274-541056","telepon":"0274-541056","7":"08134570378","handphone":"08134570378","8":"0","diskon":"0"},
        {"0":"2","id_pemasang":"2","1":"2","id_jenis_pemasang":"2","2":"34.081.203.1-342.000","npwp":"34.081.203.1-342.000","3":"CV. Prima Agung","nama":"CV. Prima Agung","4":"Jl. Cenderawasih No.72 Warungboto","alamat":"Jl. Cenderawasih No.72 Warungboto","5":"Yogyakarta","kota":"Yogyakarta","6":"0274-878906","telepon":"0274-878906","7":null,"handphone":null,"8":"5","diskon":"5"},
        {"0":"3","id_pemasang":"3","1":"2","id_jenis_pemasang":"2","2":null,"npwp":null,"3":"PT. Tampil Jaya","nama":"PT. Tampil Jaya","4":"Jl. Alamanda No.3","alamat":"Jl. Alamanda No.3","5":"Yogyakarta","kota":"Yogyakarta","6":"0274-552233","telepon":"0274-552233","7":null,"handphone":null,"8":"20","diskon":"20"}
    ] 
};

document.getElementById('destination').innerHTML = ToTable(data.ver); 
函数ToTable(数据数组)
{
html='';
var len=dataArray.length;
对于(变量i=0;i
HTML

<div id='destination'></div>


问号是…?顺便说一句,您的
数据是勘误表,您的json无效。。bytheway@bipen:不,我的json是有效的,请再次检查。哈哈哈..很抱歉这么说..但它再次无效…你忘记了
。我本可以编辑此…但不确定这是否是一个打字错误,或者这是否是你得到的..如果这是你的ettin那么问题在JSON中,而不是在jquery中..:)
for(i=N;i@roXon-是的,但我需要提前知道列数。如果他的JSON是二维数组,可能会更好。负载更小,更容易迭代。是的,你的答案没问题。我忘了+=可以帮上忙。非常感谢大家:)
<div id='destination'></div>