你是说asp.net吧?用html服务器端控件table
然后你可以对其单元格的属性用服务器端代码进行动态修改

解决方案 »

  1.   

    或者用javascript也可以做到:
    下边是一个改变背景的例子,举一反三啦
    <!--
      Program 4-2
    -->
    <html>
    <script language="JavaScript">
    <!--
      theTime = new Date();
      theHour = theTime.getHours();
      if (theHour < 18) // < 6pm local time
         document.writeln("<body background='night.gif' text='White'>");
      else
         document.writeln("<body background='night.gif' text='White'>");
    //-->
    </script>
    This is the text of the body...
    </body>
    </html>
      

  2.   

    <%@Page Language="C#"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
    <head><script language="JScript">
    <!--
    function ShowHTMLContent() {
    var strURL = 'http://<% = Request.ServerVariables["SERVER_NAME"] %><% = Request.Path %>?<% = Request.QueryString %>';
    var strDisplay = new String;
    var objHTTP = new ActiveXObject("microsoft.XMLHTTP")
    objHTTP.open('GET', strURL, false);
    objHTTP.send();
    var strReply = objHTTP.responseText;
    var intStart = strReply.indexOf('<!' + '--start-->') + 12;
    var intEnd = strReply.indexOf('<!' + '--end-->');
    if ((intStart > 0) && (intEnd > intStart))
    var strDisplay = strReply.substring(intStart, intEnd);
    document.all['outHTML'].innerText = strDisplay + ' ';
    }
    function SetCheck(strCheckboxName) {
    document.all[strCheckboxName].checked = true;
    }
    //-->
    </script><!-- #include file="style.inc" -->
    </head>
    <body bgcolor="#ffffff" onload="ShowHTMLContent()">
    <!--------------------------------------------------------------------------->
    <span class="heading">HtmlTable Control</span><p /><!--start-->
    <table id="MyControl" runat="server" />
    <!--end--><p /><div id="outError" runat="server" /><p />
    <font face="Courier New" size="2"><div style="background-color:gainsboro; padding-left:10px" id="outHTML">Fetching HTML content...</div></font><form runat="server" method="get">
    <table border="0">
    <tr>
    <td align="right" nowrap="nowrap" colspan="2">Number of Rows =</td>
    <td nowrap="nowrap"><select id="selRows" size="1" runat="server">
    <option>1</option><option>2</option><option>3</option><option>4</option></select></td>
    <td nowrap="nowrap">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</td>
    <td align="right" nowrap="nowrap" colspan="2">Number of Columns =</td>
    <td nowrap="nowrap"><select id="selCols" size="1" runat="server">
    <option>1</option><option>2</option><option>3</option><option>4</option><option>5</option><option>6</option></select></td>
    </tr><tr>
    <td nowrap="nowrap"><input type="checkbox" id="chkAlign" runat="server" /> Set: &nbsp; </td><td align="right" nowrap="nowrap">Align =</td><td nowrap="nowrap"><select id="selAlign" size="1" runat="server" onchange="SetCheck('chkAlign')">
    <option></option><option>AbsBottom</option><option>AbsMiddle</option><option>Baseline</option><option>Bottom</option><option>Left</option>
    <option>Middle</option><option>Right</option><option>TextTop</option><option>Top</option></select></td><td nowrap="nowrap"></td>
    <td nowrap="nowrap"><input type="checkbox" id="chkBgColor" runat="server" /> Set: &nbsp; </td><td align="right" nowrap="nowrap">BgColor =</td><td nowrap="nowrap"><input type="text" size="15" id="txtBgColor" runat="server" onkeypress="SetCheck('chkBgColor')" /></td>
    </tr><tr>
    <td nowrap="nowrap"><input type="checkbox" id="chkBorder" runat="server" /> Set: &nbsp; </td><td align="right" nowrap="nowrap">Border =</td><td nowrap="nowrap"><input type="text" size="3" id="txtBorder" runat="server" onkeypress="SetCheck('chkBorder')" />px</td><td></td>
    <td nowrap="nowrap"><input type="checkbox" id="chkBorderColor" runat="server" /> Set: &nbsp; </td><td align="right" nowrap="nowrap">BorderColor =</td><td nowrap="nowrap"><input type="text" size="15" id="txtBorderColor" runat="server" onkeypress="SetCheck('chkBorderColor')" /></td>
    </tr><tr>
    <td nowrap="nowrap"><input type="checkbox" id="chkCellPadding" runat="server" /> Set: &nbsp; </td><td align="right" nowrap="nowrap">CellPadding =</td><td nowrap="nowrap"><input type="text" size="3" id="txtCellPadding" runat="server" onkeypress="SetCheck('chkCellPadding')" />px</td><td></td>
    <td nowrap="nowrap"><input type="checkbox" id="chkCellSpacing" runat="server" /> Set: &nbsp; </td><td align="right" nowrap="nowrap">CellSpacing =</td><td nowrap="nowrap"><input type="text" size="3" id="txtCellSpacing" runat="server" onkeypress="SetCheck('chkCellSpacing')" />px</td>
    </tr><tr>
    <td nowrap="nowrap"><input type="checkbox" id="chkHeight" runat="server" /> Set: &nbsp; </td><td align="right" nowrap="nowrap">Height =</td><td nowrap="nowrap"><input type="text" size="3" id="txtHeight" runat="server" onkeypress="SetCheck('chkHeight')" />px</td><td></td>
    <td nowrap="nowrap"></td><td align="right" nowrap="nowrap">ID =</td><td nowrap="nowrap"><% = MyControl.ID %></td>
    </tr><tr>
    <td nowrap="nowrap"><input type="checkbox" id="chkVisible" runat="server" /> Set: &nbsp; </td><td align="right" nowrap="nowrap">Visible =</td><td nowrap="nowrap"><select id="selVisible" size="1" runat="server" onchange="SetCheck('chkVisible')"><option>True</option><option>False</option></select></td><td></td>
    <td nowrap="nowrap"><input type="checkbox" id="chkWidth" runat="server" /> Set: &nbsp; </td><td align="right" nowrap="nowrap">Width =</td><td nowrap="nowrap"><input type="text" size="3" id="txtWidth" runat="server" onkeypress="SetCheck('chkWidth')" />px</td>
    </tr><tr>
    <td></td><td></td><td></td><td></td>
    <td nowrap="nowrap"><input type="button" Value="Reset" onclick="javascript:location.href='http://<% = Request.ServerVariables["SERVER_NAME"] %><% = Request.Path %>'"></td><td nowrap="nowrap"></td><td nowrap="nowrap"><input type="submit" Value="Update" runat="server" /></td>
    </tr>
    </table>
    </form><script language="C#" runat="server">void Page_Load(Object sender, EventArgs e)
    {
    outError.InnerHtml = "";try
    {
    // create the table
    int intRows = Convert.ToInt32(selRows.Value);
    int intCols = Convert.ToInt32(selCols.Value);
    int intRowCount;
    int intColCount;
    HtmlTableRow objRow;
    HtmlTableCell objCell;for (intRowCount = 0; intRowCount <= intRows - 1; intRowCount++)
    {
    objRow = new HtmlTableRow();for (intColCount = 0; intColCount <= intCols - 1; intColCount++)
    {
    objCell = new HtmlTableCell();
    objCell.InnerHtml = "R" + intRowCount + "C" + intColCount;
    objRow.Cells.Add(objCell);
    }
    MyControl.Rows.Add(objRow);
    }if (IsPostBack)
    {
    if (chkAlign.Checked) MyControl.Align = selAlign.Value;
    if (chkBgColor.Checked) MyControl.BgColor = txtBgColor.Value;
    if (chkBorder.Checked) MyControl.Border = Convert.ToInt32(txtBorder.Value);
    if (chkBorderColor.Checked) MyControl.BorderColor = txtBorderColor.Value;
    if (chkCellPadding.Checked) MyControl.CellPadding = Convert.ToInt32(txtCellPadding.Value);
    if (chkCellSpacing.Checked) MyControl.CellSpacing = Convert.ToInt32(txtCellSpacing.Value);
    if (chkHeight.Checked) MyControl.Height = txtHeight.Value;
    if (chkVisible.Checked) MyControl.Visible = Convert.ToBoolean(selVisible.Value);
    if (chkWidth.Checked) MyControl.Width = txtWidth.Value;
    }selAlign.Value = MyControl.Align.ToString();
    txtBgColor.Value = MyControl.BgColor;
    txtBorder.Value = MyControl.Border.ToString();
    txtBorderColor.Value = MyControl.BorderColor;
    txtCellPadding.Value = MyControl.CellPadding.ToString();
    txtCellSpacing.Value = MyControl.CellSpacing.ToString();
    txtHeight.Value = MyControl.Height;
    selVisible.Value = MyControl.Visible.ToString();
    txtWidth.Value = MyControl.Width;
    }
    catch (Exception objError)
    {
    outError.InnerHtml = "<b>* Error</b>: " + objError.Message + "<p />";
    }
    }</script><!--------------------------------------------------------------------------->
    <!-- #include file="foot.inc" -->
    </body>
    </html>
    这是Wrox的原代码,看看