【发布时间】:2016-12-08 07:51:54
【问题描述】:
我在 asp.net 中有一个简单的表单,我在其中使用 LINQ to SQL 将一些数据添加到数据库。
单击按钮时,我会动态加载更多文本框。所有这些文本框都有计数器并在每次加载时获得不同的 id。
我想知道,如何从那些动态添加的文本框中获取输入值,以便我可以将该数据输入到数据库中。
意思是,如果用户在文本框中输入“指环王”,我想在代码隐藏中获取该数据并将其添加到数据库中。
很容易进入基本形式,我只是这样做:inputValue.Text,但使用不同的 id,我有点迷路了......
我的动态添加文本框的代码
protected void Button1_Click(object sender, EventArgs e)
{
counter++;
TextBox tb1 = new TextBox();
TextBox tb2 = new TextBox();
TextBox tb3 = new TextBox();
TextBox tb4 = new TextBox();
tb1.ID = "inputAuthor" + counter;
tb2.ID = "inputBookName" + counter;
tb3.ID = "inputCategory" + counter;
LiteralControl lineBreak = new LiteralControl("<br/>");
ph1.Controls.Add(tb1);
ph1.Controls.Add(lineBreak);
controlIdList.Add(tb1.ID);
ph1.Controls.Add(tb2);
ph1.Controls.Add(lineBreak);
controlIdList.Add(tb2.ID);
ph1.Controls.Add(tb3);
ph1.Controls.Add(lineBreak);
controlIdList.Add(tb3.ID);
ph1.Controls.Add(tb4);
ph1.Controls.Add(lineBreak);
controlIdList.Add(tb4.ID);
ViewState["controlIdList"] = controlIdList;
}
更新
动态添加的文本框
<input name="dnn$ctr1365$Author$inputAuthor1" id="dnn_ctr1365_Author_inputAuthor1" type="text">
<input name="dnn$ctr1365$BookName$inputBookName1" id="dnn_ctr1365_BookName_inputBookName1" type="text">
<input name="dnn$ctr1365$Category$inputCategory1" id="dnn_ctr1365_Category_inputCategory1" type="text">
默认 .aspx 格式
<input name="dnn$ctr1365$Author$inputAuthor" id="dnn_ctr1365_Author_inputAuthor" class="form-control" style="background:#fff" type="text">
【问题讨论】:
-
请提供在浏览器上呈现的html。
-
你是这个意思吗? (请参阅更新)。哦,顺便说一句,这是我正在创建的 dnn 模块@Bharat
-
好的,所以我认为这些 id 是客户端 id,只需在该 html 中添加一个标签,即 Runat = "server" 或使其成为 asp:net 文本框
-
我现在如何获取输入值? @巴拉特
标签: c# asp.net forms linq dynamic-programming