我想在C#中动态获取选项

时间:2013-04-25 18:27:36

标签: c# forms dynamic for-loop options

当我提交表单时,我想使用for循环获取选项值,我有这个代码,我怎样才能成功地使这个模块工作?

        for (int j = 0; j < i; j++)
        {
            String gender = Request.Form['"Option"+i'].ToString();
            Response.Write(gender);
        }

3 个答案:

答案 0 :(得分:4)

你只想要:

String gender = Request.Form["Option" + i].ToString();

这是一个索引器参数的事实在这里无关紧要。就像这样:

int x = 5;
String y = "Option" + x; // Now y is "Option5"

然而,看看你的循环,你可能实际上想要使用j而不是i

for (int j = 0; j < i; j++)

i的值在循环过程中不会改变。

答案 1 :(得分:2)

试试这个

String gender = Request.Form["Option" + j].ToString();

答案 2 :(得分:1)

你可以这样做

for (int j = 0; j < i; j++)
{
    string key = string.Format("Option{0}", i);
    string gender = Request.Form[key].ToString();
    Response.Write(gender);
}

但是,由于编写for - 循环的方式,它只会输出相同的表单字段i次。你可能想要这样的东西:

for (int j = 0; j < totalFields; j++)
{
    string key = string.Format("Option{0}", j);
    string gender = Request.Form[key].ToString();
    Response.Write(gender);
}