0
我有一个Button
,它创建一个TextBoxes
动态列表,我也有一个提交信息的Button
。但是我不知道如何访问Textboxes
的值。下面是代码:从动态文本框中检索值
if (IsPostBack) { ViewState["count"] = Convert.ToInt32(ViewState["count"]) + 1; int Count = int.Parse(string.Format("{0}", ViewState["count"])); var lstTextBox = new List<TextBox>(); for (int i = 0; i < Counter; i++) { TextBox txtbx = new TextBox(); txtbx.ID = string.Format("txtbx{0}", i); // txtbx.AutoPostBack = true; lstTextBox.Add(txtbx); //txtbx.Text = "initial value"; } Session["lstTextBox"] = lstTextBox; } protected void Button1_Click(object sender, EventArgs e) { int total = Counter; for (int i = 0; i < total; i++)//Calls to createbox CreateTextBox(i); //Label1.Text = Counter.ToString(); if (Counter == 4) { Button1.Visible = false; } } private int Counter { get { return Convert.ToInt32(ViewState["count"] ?? "0"); } //Fields button counter set { ViewState["count"] = value; } } private void CreateTextBox(int j) //Creates the fields/cells { var box = new TextBox(); box.ID = "Textbox" + j; box.Text = "Textbox" + j; var c = new TableCell(); c.Controls.Add(box); r.Cells.Add(c); table1.Rows.Add(r); }
如何想有Button2
抢值。
预先感谢您!
我个人使用JavaScript来添加一个新的文本字段,而不是使用大量后背上..然后我只希望通过所有的控制循环当用户按下提交。 – Izzy
为什么你在'Session'缓存中存储文本框,然后不使用它来实际构建它们? –
我想指出,为了安全起见,您可能需要将if(Counter == 4)'更改为if(Counter> = 4)'。 – Izzy