如何在背后code占位获取文本框的值? [英] how to get textbox value in placeholder on code behind?
问题描述
我创建了一些文本,我想动态获取自己的价值。
简单地说,我解释一下我的网页:
I created some textbox and I want to get their value dynamically. Briefly, ı explain my page:
我有下拉列表中的编号为1至15.When用户选择号码和我创建文本框作为选择的号码。
例如;用户选择3,我创建3个文本框,用户写的东西在文本框。
这里是我的code:
ASPX页面:
I have dropDown list has number 1 to 15.When the user select number and I created textbox as selected number. for example; user select 3 and I create 3 text box and user write something in textbox. Here is My Code: aspx Side:
<asp:DropDownList ID="ddlUserSelected" AutoPostBack="true" OnSelectedIndexChanged="ddlUserSelected_SelectedIndexChanged" runat="server">
<asp:PlaceHolder ID="PlaceHolder1" runat="server"></asp:PlaceHolder>
<asp:Button ID="btnSave" runat="server" Text="Save" OnClick="btnSave_Click"/>
code背后:
Code Behind:
protected void ddlUserSelected_SelectedIndexChanged(object sender, EventArgs e)
{
for (int a = 1; a <= int.Parse(ddlUserSelected.SelectedItem.Text); a++)
{
TextBox txtDate = new TextBox();
Label lbl = new Label();
lbl.Text = "<br/>";
txtDate .Width = 70;
txtDate .CssClass = "tbl";
txtDate .ID = "txtDate" + a;
PlaceHolder1.Controls.Add(txtDate);
PlaceHolder1.Controls.Add(lbl);
}
}
和我也有保存按钮。
protected void btnSave_Click(object sender, EventArgs e)
{
for (int a = 1; a <= int.Parse(ddlUserSelected.SelectedItem.Text); a++)
{
//I want to get each textbox value
}
}
注:循环不要紧(可拆除)我的主要目的是获取文本框的值
Note: for loop doesn't matter (can be removed) My main aim is get the text box value.
如何 btnSave_Click
方法来获取文本框(ES)的价值?
How to get textbox(es) value in btnSave_Click
method?
推荐答案
下面code可以帮助你。
Below code will help you
protected void ddlUserSelected_SelectedIndexChanged(object sender, EventArgs e)
{
for (int a = 1; a <= int.Parse(ddlUserSelected.SelectedItem.Text); a++)
{
TextBox txtDate = new TextBox();
Label lbl = new Label();
lbl.Text = "<br/>";
txtDate.Width = 70;
txtDate.CssClass = "tbl";
txtDate.ID = "txtDate" + a;
PlaceHolder1.Controls.Add(txtDate);
PlaceHolder1.Controls.Add(lbl);
}
}
protected void btnSave_Click(object sender, EventArgs e)
{
for (int a = 1; a <= int.Parse(ddlUserSelected.SelectedItem.Text); a++)
{
if(Request.Form.Get("txtDate" + a.ToString()) != null)
{
var str = Request.Form.Get("txtDate" + a.ToString());
}
}
}
如果您使用母版页,然后使用下面code
If you are used master page then use below code
if (Request.Form.Get("ctl00$ContentPlaceHolder1$txtDate" + a.ToString()) != null)
{
var str = Request.Form.Get("ctl00$ContentPlaceHolder1$txtDate" + a.ToString());
}
这篇关于如何在背后code占位获取文本框的值?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!