StringBuilder sb = new StringBuilder();
sb.Append("<table><tbody>");
sb.Append("<tr><th>id</th><th>name</th></tr>");//表格的头
DataTable dt = DBHelper.getTable();//你返回datatable的方法
foreach(DataRow dr in dt.rows)
{
sb.AppendFormat("<tr><td>{0}</td><td>{1}</td></tr>",dr["id"],dr["name"]);
}
sb.Append("</tbody>
</table>");
Response.Write(sb);
要结贴噢
用response.write自己写
用铅笔画~~~
用Response.Write方法。
后台:string str="<td>"+数据值+"<td>"
前台:<%=str %>
ASP.net 本质还是ASP
用ASP时代的技术一样运行
一楼的建议正确,不过楼主没学过就没法子了
去学呗
将数据以json方式返回给客户端,用js遍历...
真不明白楼主想干什么,那些控件输出到客户端的时候也是表格,干吗要自己写?拼字符串好么?
如果你只是嫌datalist gridview这类的控件会生成许多不必要的东西的话,那用repeater啊,无论是你返回json给客户端,然后在客户端生成,还是你后台输出字符串,能有微软给你写的容错好?
在aspx页面设置个标签比如<div id="text1" runat="server"></div> 这个div可以放在你想放的位置,
然后后台代码
protected void fun(){
string strHTML="<table class=\"template\" >";//定义个变量存储html
for(int i=0;i<table.rows.count;i++)
{
strHTML+="<tr><td>"+dt.rows[i][column].tostring()+"</td></tr>";
}
strHTML+="</table>";
text1.innerHTML=strHTML;
}
//如果要分页的的话,可以定义个变量每页显示几条 比如int pagesize=10;定义个当前页面变量
int currentPage=Request.QueryString(“page”)==null?0:Convert.Toint32(Request.QueryString(“page”))
循环改成for(int i=currentPage*pagesize;i<(table.rows.count<(currentPage+1)*pagesize)?table.rows.count:(currentPage+1)*pagesize;i++)
即可
StringBuilder sb = new StringBuilder();
if (sessionUserGroup == "超级管理员")
{
sb.Append("<div class='part' >");
sb.Append("<div onclick='displaySubMenus(this);' class='mainMenu'><a>功能列表</a></div>");
sb.Append("<div style='display:;'>");
sb.Append("<ul>");
sb.Append("<li><a href='test.aspx'>01.站纸文件管理</a></li>");
sb.Append("</div>");
}
else
{
sb.Append("<div class='part' >");
sb.Append("<div onclick='displaySubMenus(this);' class='mainMenu'><a>功能列表</a></div>");
sb.Append("<div style='display:;'>");
sb.Append("<ul>");
foreach (DataRow dr in UserFuncsTable.Rows)
{
sb.Append("<li><a href='" + dr["FunctionPage"].ToString() + "'>" + dr["FunctionName"] + "</a></li>");
}
sb.Append("</ul></div>");
sb.Append("</div>");
}
writer.Write(sb.ToString());
在后台写一个方法在前台用循环啊