2
//ASPX PAGE
    <div id="nonPrintable">
         <table width="98%" border="0" cellspacing="2" cellpadding="0" align="center">
               --
               --</table>          
     </div>
    <br/>
    <div id="printReport" runat="server">

    </div>

我正在从服务器端写表

Response.Write("<table width='95%' border='0' cellpadding='0' cellspacing='0' align='center'>");
Response.Write("<tr class='tdcolbg'>");
Response.Write("<td>");***SOME CONTENT***
Response.Write("</td>");
Response.Write("</tr>");
Response.Write("</table>");

我已将服务器端表格内容添加到 div printReport 我该如何添加它。

4

3 回答 3

2

为什么不使用Repeater?

<div id="printReport" runat="server">
     <asp:Repeater id="Repeater1" runat="server">
      <HeaderTemplate>
         <table border="1">
            <tr>
               <td><b>Company</b></td>
               <td><b>Symbol</b></td>
            </tr>
      </HeaderTemplate>

      <ItemTemplate>
         <tr>
            <td> <%# DataBinder.Eval(Container.DataItem, "Name") %> </td>
            <td> <%# DataBinder.Eval(Container.DataItem, "Ticker") %> </td>
         </tr>
      </ItemTemplate>

      <FooterTemplate>
         </table>
      </FooterTemplate>

   </asp:Repeater>
</div>
于 2012-08-13T06:12:54.160 回答
1

您已printReport通过添加将 div 设置为服务器控件runat="server"。像这样添加你的表

StringBuilder sb=new StringBuilder();
sb.Append("<table>");

并将其添加到这样的控件中

printReport.innerHTML=sb.toString();
于 2012-08-13T06:10:54.020 回答
1

而不是使用 div 使用标签控件并将内容保存在 stringbuilder 对象中,然后将其分配给标签文本属性。下面的例子

 // aspx code
<asp:Label ID ="lbReport" runat="server" />

// Code Behind
StringBuilder sbreport=new StringBuilder();
sbreport.Append("<table width='95%' border='0' cellpadding='0' cellspacing='0' align='center'>");
sbreport.Append("<tr class='tdcolbg'>");
sbreport.Append("<td>");***SOME CONTENT***
sbreport.Append("</td>");
sbreport.Append("</tr>");
sbreport.Append("</table>");


lbReport.Text = sb.ToString();
于 2012-08-13T06:08:16.383 回答