【发布时间】:2016-11-14 18:57:56
【问题描述】:
这是我的 JSON 格式
{
"result": {
"buildname1": [{
"table1": ["xxx","yyy"]
}, {
"table2": ["xxx","yyy"]
}, {
"table3": ["xxx","yyy"]
}],
"buildname2": [{
"table1": ["xxx","yyy"]
}, {
"table2": ["xxx","yyy"]
}, {
"table3": ["xxx","yyy"]
}]
},
"Build sets": "yyy",
"destinationPath": "xxx",
"status": 1
}
这是我用来动态创建表格的函数。
function generateTable(data){ //data is the parsed JSON Object from an ajax request
$("#test-table tbody").empty();//Empty the table first
if(data.result != null){
$.each(data.result,function(key,value){
var buildName ="<tr><td rowspan='"+value.length+"'>"+key+"<span class='cyan darken-1 white-text badge'>"+value.length+" base tables</span></td>";
var baseTable ="";
for(i=0;i<value.length;i++){
if( i == 0 ){
for(var k in value[0]){
baseTable ="<td rowspan='"+value[0][k].length+"'>"+k+"</td></tr>";
}
}
else{
for(var key in value[i]){
baseTable = baseTable + "<tr><td rowspan='"+value[i][key].length+"'>"+key+"</td></tr>";
}
}
}
$("#test-table").append(buildName + baseTable);
});
}
}
这是我想要达到的目标
HTML
<table id="test-table" class="bordered responsive-table">
<thead>
<tr>
<th>Build Name</th><th>Base Table</th><th>Query List</th>
</tr>
</thead>
</table>
问题:
我成功地创建了前两列(虽然有些难看,我想我以后可以改进它),我被困在第三列。我发布的代码正确地创建了前两列,但行跨度(第三列)中的行跨度的逻辑似乎让我无法理解。请指导我。
【问题讨论】:
-
您对此有疑问吗?如果有,请详细说明问题。目前这里没有问题
-
@RoryMcCrossan 对不起。我过早地发布了问题而没有先正确检查
-
拥有您的 html 也很有用,即使我们在这种情况下可以猜到,请养成在您的问题或 codepen/jsfiddle 中发布它的习惯
-
@RobinDardelet jsfiddle.net/80ek406h
-
@MageshKumaar 我想我知道如何实现您的目标。查看我的答案并告诉我。谢谢!
标签: javascript jquery html