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

javascript 生成表格
用javascript生成一个二行五列的表格并将var   ss= "我,是,中,国,人,/6,7,8,9,10 ";这10个字符分别放入每个单元格最后的效果是:

<table   border=2   style= "color:blue ">
<tr>
<td> 我
</td>
<td> 是
</td>
<td> 中
</td>
<td> 国
</td>
<td> 人
</td>
</tr>
<tr>
<td> 6
</td>
<td> 7
</td>
<td> 8
</td>
<td> 9
</td>
<td> 10
</td>
</tr>
</table>


我现在写的js是这个效果:
//**********************************************************
var   ss= "我,是,中,国,人,/6,7,8,9,10 ";
var   xarray=new   Array();
xarray=ss.split( "/ ");

var   darray=new   Array();
darray=ss.split( ", ");

var   str= " ";
str= " <table   border= '2 '   style= 'color:Red '> ";
for(var   i=0;i <xarray.length;i++)
{
str+= " <tr> ";
  for(var   j=0;j <darray.length;j++)
  {
if(darray[j].indexOf( "/ ")!=-1)
{
  //ss=ss.substring(darray[j].indexOf( "/ "),darray.length);
    //ss=darray[j].indexOf( "/ ");
      //alert(ss);
                    break;
}
else
{
str+= " <td> "+   darray[j]   + " </td> ";  
}  
  }
str+= " </tr> ";
}
str+= " </table> ";

document.write(str);
//************************************************
<table   border=2   style= "color:red ">
<tr>
<td> 我
</td>
<td> 是
</td>
<td> 中
</td>
<td> 国
</td>
<td> 人
</td>
</tr>
<tr>
<td> 我
</td>
<td> 是
</td>
<td> 中
</td>
<td> 国
</td>
<td> 人
</td>
</tr>
</table>

------解决方案--------------------
var ss= "我,是,中,国,人,/6,7,8,9,10 ";
ss = ss.replace(/\//g, "\x07 ")
.replace(/([\w\u4e00-\u9fa5]+)/g, " <td> $1 </td> ")
.replace(/[\x07]/g, " </tr> <tr> ")
.replace(/,/g, " ");
ss = " <table border=2 style= 'color:blue '> <tr> "+ ss + " </tr> </table> ";
document.write(ss);