【问题标题】:Add row to HTML Table at Run-time in ASP.Net在 ASP.Net 运行时向 HTML 表添加行
【发布时间】:2015-03-17 00:02:43
【问题描述】:

我在 asp.net 中有一个带有 runat="server" 的 HTML 表格。

我想在表格中添加行在按钮的点击事件或类似的事情上,我的表格是这样的:

<table id="table1" runat="server"></table>

我试过table1.InnerHtml = "&lt;tr&gt;&lt;/td&gt;Test&lt;/td&gt;&lt;/tr&gt;";

但它不起作用,我得到了这个异常:

System.NotSupportedException:“HtmlTable”不支持 InnerHtml 属性。

我怎样才能做到这一点?

【问题讨论】:

  • 这也许是你在MSDN的答案

标签: asp.net c#-4.0 html-table


【解决方案1】:

您需要在表格中添加一行,并在该行中添加一个单元格:

var row = new HtmlTableRow();
var cell = new HtmlTableCell() { InnerText = "Test" };
row.Cells.Add(cell);
table1.Rows.Add(row);

【讨论】:

    【解决方案2】:

    您需要明确添加行和单元格:

    未经测试:

    var newRow = new HtmlTableRow();
    var newCell = new HtmlTableCell();
    
    newCell.InnerText = "Test";
    
    newRow.Cells.Add(newCell);
    
    table1.Rows.Add(newRow);
    

    【讨论】:

      【解决方案3】:

      我在 vb.net 中执行上述代码,当我单击按钮时,它会创建一个新行,其中包含我在文本框中输入的文本。但问题是它只创建一行, 并在第二次单击时用新输入更改第一行。 我需要

      <table id="Mytable" runat="server">
          <tr><td>Row Data 1.....!</td></tr>  //New row on 1st click
          <tr><td>Row Data 2.....!</td></tr>  //New row on 2nd click
          <tr><td>Row Data 3.....!</td></tr>  //New row on 3rd click
      </table>
      

      每次单击按钮时都会创建一个新行。我们如何做到这一点?

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2010-10-22
        • 1970-01-01
        • 2015-01-12
        • 2011-10-13
        • 2010-10-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多