我在做一个问卷调查,有100多个单选题,我想在提交的时候用一个循环遍历所有选择题的答案并将答案放到数组里,如何实现啊?怎么在for循环里的i自增的同时,使得RadioButtonList也自增呢。有没有什么办法?
for(1-100循环)
{
for(RadioButtonList循环)
{
if(选中)
{
记录到数组中;
break;
}
}
}
这个RadioButtonList如何写循环,我的RadioButtonList是在一个table里建立的,我直接用foreach(RadioButtonList in table.controls)为什么找不到啊
应该怎么写。
@飞翔的球迷:
string[] s = new string[100];
for(i=0;i<100;i++)
{
s[i] = radiobuttonlist1.selecteditem.value;
}
for (int i = 0; i < 76; i++) { Control c= this.FindControl("r"+i.ToString()); if (c != null) { if (c is RadioButtonList || c is CheckBoxList || c is TextBox) { RadioButtonList rl = (RadioButtonList)c; s[i] = rl.SelectedValue; } } }
我这里的c全是空值,不知道是为什么
@飞翔的球迷: 你的c是怎么命名的?
@刘宏玺:我哪错了,Control c= this.FindControl("r"+i.ToString());
@飞翔的球迷: 你的控件的name就是r1 r2 这样的?
@刘宏玺: 恩,我这会先简单写个测试的。
嵌套循环呀,for里面再做一个循环检查每个选择的RadioButton
设置一个相同的name,然后提交的时候就是一个数组哇。
您这个太简练了,我没看懂,能解释具体一点吗?
@飞翔的球迷: 抱歉,回答是错误的。设置相同的name,适合复选框。
作为单选框,你可以为每组RadioButton设定一个name,并设置同样的class,通过js+循环的方式来遍历取值。方式大概就如楼下所说。这种需求不一定非要用RadioButtonList,完全可以直接写<input type="radio"> 效果是一样的。