0

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

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

3 回答 3

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在循环过程中不会改变。

于 2013-04-25T18:28:39.067 回答
2

尝试这个

String gender = Request.Form["Option" + j].ToString();
于 2013-04-25T18:28:44.837 回答
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-loop 的编写方式,它只会输出相同的表单字段i时间。你可能想要这样的东西:

for (int j = 0; j < totalFields; j++)
{
    string key = string.Format("Option{0}", j);
    string gender = Request.Form[key].ToString();
    Response.Write(gender);
}
于 2013-04-25T18:28:45.837 回答