日期:2014-05-16  浏览次数:20325 次

JS数据遍历赋值到table中,怎么搞啊?
一个table,N行N列,每个格子都显示 一个城市名称,比如4行6列,就显示24个城市名。
数据要自己用JS构造,然后将自己构造的数据赋值到table中,请问该怎么写啊?

现在是要展示给客户看基本效果,不用后台数据,所以要用JS构造些数据。

------解决方案--------------------
不就table.insertRow
TR.insertCell,设置td的innerHTML为城市名称就行了

不知道你的js构造数据时什么意思。
------解决方案--------------------

///////生成测试数据//////////
 var ds=[],i=24;
 while(i)ds.unshift(i--);
 ////////////////////
 //创建表格 ds:数据,r;行数 ,c :列数
 function cTb(ds,r,c){
  if(!c
------解决方案--------------------
!r
------解决方案--------------------
!ds
------解决方案--------------------
!ds.length) return;
  var tb=document.createElement('table'),L=ds.length,ii=0;
  for(var i=0;i<r;i++){
  var row=tb.insertRow(-1);
  for(var j=0;j<c;j++){
  row.insertCell(-1).innerHTML=ds[ii++];
  }
  }
  return tb;
 }
 
 
 var tb=cTb(ds,4,6);
 tb.border=1;
 document.body.appendChild(  tb  )

------解决方案--------------------
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js">
</script>
<script>
$(function() {
var data = ['广州','北京','厦门','上海','武汉','江苏','南京','广州','广州','广州','广州','广州','广州','广州','广州','广州','广州','广州','广州','广州','广州','广州','广州','广州',];
var k = 0;
var str= '';
str += "<table border='1' bordercolor='#000'>";
for(var i=0; i<4; i++) {
    str += '<tr>';
    for(var j=0; j<6; j++) {
        var tds = '<td>' + data[k] + '</td>';
        k++;
        str += tds;
    }
    str += '</tr>';
}
str += '</table>';
$('#divId').html(str);
});
</script>
</head>
<body>
<div id='divId'></div>
</body>
</html>