im试图从数据库中选择数据并用数据填充html表,其中一列的类型为Varchar(max),因此字符串较大且可读性较差。
当前结果如下:
所需结果如下:
唯一需要格式化的列是描述列。
ive尝试了几种不同的方法,包括使用Char(13)等将数据插入数据库,如下所示:
推进器(95#)'+ CHAR(13)+ char(10)+'上拉'
ive还尝试为标签添加样式,如下所示:
html.Append("<th style width: 40px>");
html.Append(column.ColumnName);
html.Append("</th>");
这只是列的重复项。林不知道这应该怎么做。
下面是使用的代码:
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
//Populating a DataTable from database.
DataTable dt = this.GetData();
//Building an HTML string.
StringBuilder html = new StringBuilder();
//Table start.
html.Append("<table border = '1'>");
//Building the Header row.
html.Append("<tr>");
foreach (DataColumn column in dt.Columns)
{
html.Append("<th>");
html.Append(column.ColumnName);
html.Append("</th>");
}
html.Append("</tr>");
//Building the Data rows.
foreach (DataRow row in dt.Rows)
{
html.Append("<tr>");
foreach (DataColumn column in dt.Columns)
{
html.Append("<td>");
html.Append(row[column.ColumnName]);
html.Append("</td>");
}
html.Append("</tr>");
}
//Table end.
html.Append("</table>");
//Append the HTML string to Placeholder.
FindControl("PlaceHolder1").Controls.Add(new Literal { Text = html.ToString() });
}
}
答案 0 :(得分:0)
尝试此操作,边框折叠:表格边框折叠为单个边框
table {
border-collapse: collapse;
width:100%;
}
table, th, td {
border: 1px solid black;
}
table td:nth-child(2){ text-align:center; }
table td{ padding:5px; }
<table cellspacing="0">
<tr>
<th>Name</th>
<th>Length</th>
<th>Description</th>
</tr>
<tr>
<td>Fran</td>
<td>21-15-9 Reps</td>
<td>Thruster (95#)<br>Pull-ups</td>
</tr>
<tr>
<td>Garrett</td>
<td>3 Rounds</td>
<td>75 Squats<br>25 Ring Handstand Push-ups<br>25 L Pull-ups</td>
</tr>
</table>