我正在使用 asp.net 构建一个页面。我有一个包含文本框和提交按钮的表格的表单。提交表单时,我想抓取输入到文本框中的所有文本并对其进行操作。为此,我有以下方法:
protected void Button1_Click(object sender, EventArgs e)
{
System.Text.StringBuilder sb = new System.Text.StringBuilder();
foreach (Control c in this.Controls)
{
if (c.GetType().Name == "TextBox")
{
TextBox tb = (TextBox)c;
sb.AppendLine(tb.Text);
}
}
Label1.Text = sb.ToString();
}
Run Code Online (Sandbox Code Playgroud)
问题在于控件显然不包含我的任何文本框。当我遍历控件并打印出它们的名称时,我得到的唯一一个是“site_master”。(我还尝试了 Controls 和 Page.Controls 而不是 this.Controls)。
我的迭代器有问题吗?是否有另一种方法可以迭代表或页面中的所有文本框?实现这一目标的最佳方法是什么?
List<Textbox>如果您知道所有文本框控件,那么构建一个 会不会太多?
List<Textbox> txtBoxes = new List<Textbox>();
txtBoxes.Add(tb1);
txtBoxes.Add(tb2);
//etc..
Run Code Online (Sandbox Code Playgroud)
然后你就有了一个不错的清单可以使用
| 归档时间: |
|
| 查看次数: |
6285 次 |
| 最近记录: |