JQuery操作Json循环插入到Table,求助!

1创建Json对象:vardata="[{name:'6101',value:'北京市',age:'11'},{name:'6102',value:'天津市',age:'... 1创建Json对象:
var data = " [ {name:'6101',value:'北京市',age:'11'}, {name:'6102',value:'天津市',age:'11'}, {name:'6103',value:'上海市',age:'22'}]"; //创建Json字符串
var dataObj = eval("(" + data + ")"); //转换为json对象

2,table:
<table id="mytab" border="1">
<tr>
<th>代号</th>
<th>城市</th>
<th>附加数字</th>
</tr>
</table>

------------------------------我的想法-------------------------------
外面for循环用来遍历JSON有多少个“子对象”,并给table添加tr,
内部each遍历每个‘子对象的属性’,写入tr里面!
-----------------------------我的想法结束----------------------------

3,循环插入的JQ代码:
  var $tab1 = $("#mytab");
for (i = 0; i < dataObj.length; i++) {
$tab1.append("<tr>");
  $.each(dataObj[i], function (j, val) {
  $("#mytab").append("<td>"+val+"</td>");
  });
$tab1.append("</tr>");
  }

如何后的结果为:
展开
 我来答
百度网友a19d193
推荐于2018-03-08 · TA获得超过3446个赞
知道大有可为答主
回答量:1464
采纳率:100%
帮助的人:1446万
展开全部
<table id="myTable">
<thead>
<tr>
<th>代号</th>
<th>城市</th>
<th>附加数字</th>
</tr>
</thead>
<tbody></tbody>
</table>
<script>
var data = [{name:'6101',value:'北京市',age:'11'}, {name:'6102',value:'天津市',age:'11'}, {name:'6103',value:'上海市',age:'22'}];
function getRow(row) {
var tr = $('<tr></tr>');
for(var i in row) {
tr.append('<td>' + row[i] + '</td>');
}
return tr;
}
var tbody = $('<tbody></tbody>');
for(var i = 0; i < data.lenght; i ++ )
tbody.append(getRow(data[i]);
$('#myTable tbody').replaceWith(tbody);
</script>

这个是比较标准,也更易读的代码,希望能帮到你。

zhoumh1988
2013-04-19 · 超过20用户采纳过TA的回答
知道答主
回答量:63
采纳率:0%
帮助的人:37.2万
展开全部
$.each(dataObj,function(index,item){
var $tr = $('<tr>');
$.each(item,function(name,val){
var $td = $('<td>').html(val);
$tr.append($td);
});
$tab1.append($tr);
});
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友59d1d93f2
2013-04-20 · TA获得超过1.2万个赞
知道小有建树答主
回答量:1063
采纳率:100%
帮助的人:686万
展开全部
$('#mytab').append($(data).map(function(){return '<tr>{0}</tr>'.format($(this).map(function(){return '<td>{0}</td>'.format(this);}));}));
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
djchallenge
2013-04-19 · 超过25用户采纳过TA的回答
知道答主
回答量:119
采纳率:0%
帮助的人:64.9万
展开全部
不用外面的循环,直接把$tab1.append("<tr>");放到each里面就可以了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式