runat="server"的table动态添加行的问题

forshia 2012-06-07 03:47:59
有一个这样的Table。我想在按下一个Button。这个Table就自动添加一行。代码如下。但是当添加成功一行后。第二次按button的时候,这个Table的行数没有增加。调试过后发现是table1在每次按下Button后都被还原成了。请问有谁知道怎么解决这个问题?
<table runat="server" id="table1">
<tr>
<td>字段名</td>
<td>值</td>
</tr>
<!--动态添加的内容 -->
</table>

protected void Btn_Add_Click(object sender, EventArgs e)
{
HtmlTableRow NewRow = new HtmlTableRow();
HtmlTableCell NewCellField = new HtmlTableCell();
HtmlTableCell NewCellValue = new HtmlTableCell();
TextBox NewFieldTextBox = new TextBox();
TextBox NewValueTextBox = new TextBox();

NewFieldTextBox.Text = "新字段";
NewValueTextBox.Text = "新值";

//添加文本框
NewCellField.Controls.Add(NewFieldTextBox);
NewCellValue.Controls.Add(NewValueTextBox);

//添加TD
NewRow.Cells.Add(NewCellField);
NewRow.Cells.Add(NewCellValue);

//添加TR
table1.Rows.Add(NewRow);



}
...全文
252 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
forshia 2012-06-07
  • 打赏
  • 举报
回复
用JS操作是可以。但是满足不了我的需求。
我补充一下需求。
我要做的功能是可以添加任意多的行。
最后按一个Btn_Save要把刚添加的行回写到数据库中的。
sd1232123 2012-06-07
  • 打赏
  • 举报
回复
后台跑js添加即可,这个应该很简单把。。然后dom操作 拼接一个<tr></tr>
forshia 2012-06-07
  • 打赏
  • 举报
回复
谢谢楼上的解答。
但是你的是Datatable。
DataTable的我也知道。
我想要的是按一个Btn_Add这个Button。我页面上的<Table>。能新增一个新的行。注意是Html里的<table>不是DataTable对像。
而且我这暂时不需要和数据库做挂接
dupeng20122 2012-06-07
  • 打赏
  • 举报
回复
DataTable dt = //原始数据源
DataTable dts =
dt.Columns.Add("MyColumn");//追加一列
DataRow dr = dt.NewRow();
dr.ItemArray = new object[] {"添加的行" }; //你要添加的数据
dt.Rows.InsertAt(dr, 0); //在当前行添加新行
rp_Data.DataSource = dt;
rp_Data.DataBind();
forshia 2012-06-07
  • 打赏
  • 举报
回复
手动置顶吧。。请不起人了。。
zagj11 2012-06-07
  • 打赏
  • 举报
回复
帮顶有分没有啊 .......

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧