简单的循环 输出Table。
页面得到一个小Table 这个Table里面有多行,多列。
根据已知的一数:比如(37)
如何根据这个数,假如横向为4列,那就应该有10 行 4列 (4*9)+1=37 最后一行只有一个Table,其他的每行都4个Talbe。
页面总计应该就要有 37个Table.
求大侠们多多指教。
[解决办法]
当输入是个DataTable
:
//javascript
//json={{columns:[A,B]},{data:[['a1','b1'],['a2','b2']]}};//datatable 转换的json示例
//假设页面引用了jQuery
$(function(){
var tab=$("<table/>");
var row= tab[0].insertRow(-1);
$(json.columns).each(function(){
var cell=row.insertCell(-1);
$(cell).html(this);
})
//以上代码会生成一个tr行,该行显示表头。其他自己写
})
//C#
//dataTable 输入的DataTable对象
System.Web.UI.HTMLControl.HTMLGer... hgc=new System.Web.UI.HTMLControl.HTMLGer...("div");//Ger...忘记怎么拼了
string th="";
foreach(Column cn in dataTable.Columns)
{
th+=string.format("<td>{0}</td>",cn.Name);
}
hgc.innerHTML=string.format("<table><tr>{0}</tr><table>",th);
Controls.Add(hgc);
//同样只有表头部分
CreateTable(37,4);
public string CreateTable(int cellCount, int columnCount)
{
StringBuilder resultSb = new StringBuilder();
resultSb.Append("<table border='1' width='300' height='300'>");
int trCount = cellCount / columnCount;
int trMod = cellCount % columnCount;
for (int i = 0; i < trCount; i++)
{
resultSb.Append("<tr>");
for (int j = 0; j < columnCount; j++)
{
resultSb.Append("<td></td>");
}
resultSb.Append("</tr>");
}
if (trMod > 0)
{
resultSb.Append("<tr>");
for (int k = 0; k < trMod; k++)
{
resultSb.Append("<td></td>");
}
resultSb.Append("<td colspan="" + (columnCount - trMod).ToString() + ""></td>");
resultSb.Append("</tr>");
}
resultSb.Append("</table>");
return resultSb.ToString();
}