我有一个带有 HTML 表格的 Web 应用程序,其中到处都包含输入框。我希望能够从 C# 方面向这些表中添加行。为此,我使用了一个调用此方法的 asp 按钮:
private void AddRow()
{
HtmlTableRow tRow = new HtmlTableRow();
HtmlTableCell cell = new HtmlTableCell();
HtmlTableCell cell2 = new HtmlTableCell();
HtmlTableCell cell3 = new HtmlTableCell();
HtmlTableCell cell4 = new HtmlTableCell();
cell.InnerHtml = "<input type=\"text\" size=\"29\">";
tRow.Cells.Add(cell);
cell2.InnerHtml = "<input type=\"text\" size=\"9\" class=\"units commas\" />";
cell2.Attributes.Add("class", "leftBorder textCenter");
tRow.Cells.Add(cell2);
cell3.InnerHtml = "<input type=\"text\" size=\"8\" class=\"value commas\" />";
cell3.Attributes.Add("class", "leftBorder textCenter");
tRow.Cells.Add(cell3);
cell4.InnerHtml = "<input type=\"text\" size=\"11\" readonly=\"readonly\" tabindex=\"-1\" class=\"totalA1 autoTotal\" /> ";
cell4.Attributes.Add("class", "leftBorder rightBorder textRight");
tRow.Cells.Add(cell4);
someTable.Rows.Add(tRow);
}
这很好用……正好是一排。我可以单击按钮,它会添加一行。如果我再次单击它,它不会做任何事情。更具体地说,我怀疑它正在删除当前添加的行,将文档恢复到“默认”状态,然后添加一行(实际上什么都不做)。
假设我是对的,我需要能够以某种方式将一行附加到另一个动态创建的行,而不是仅仅替换它。如果我错了,我只需要一种能够在按下按钮时不断添加行的方法。
我该怎么做呢?
编辑:我应该指定,所有这些都可以一次循环完成。为了测试,我希望让它在按下按钮时工作,但它都可以整齐地塞进某种循环中。我已经(一些)成功地将它放在了一个中。