C# 从所选复选框(复选框数组)获取值
我有一系列的复选框,总共33个。 因为复选框遍布整个页面,所以它需要在一个数组中(对吗?) 后面的代码如下所示:C# 从所选复选框(复选框数组)获取值,c#,asp.net,arrays,checkbox,C#,Asp.net,Arrays,Checkbox,我有一系列的复选框,总共33个。 因为复选框遍布整个页面,所以它需要在一个数组中(对吗?) 后面的代码如下所示: CheckBox[] variableName = new CheckBox[33]; variableName[0] = idCheckBox1; variableName[1] = idCheckBox1; variableName[2] = idCheckBox1; variableName[3] = idChe
CheckBox[] variableName = new CheckBox[33];
variableName[0] = idCheckBox1;
variableName[1] = idCheckBox1;
variableName[2] = idCheckBox1;
variableName[3] = idCheckBox1;
等等
ASP.NET:
<asp:CheckBox ID="idCheckBox1" runat="server" Value="1" />
<asp:CheckBox ID="idCheckBox2" runat="server" Value="2" />
...
...
复选框是完全可选的。
现在,如何仅在变量中获取复选框的值?它不需要是数组。
这就是如何从代码隐藏中选中表单中的所有复选框的方法:
var names = formCollection.AllKeys.Where(c =>
c.StartsWith("idCheckBox") &&
formCollection.GetValue(c) != null &&
formCollection.GetValue(c).AttemptedValue == "1");
此外,也许您可以从CheckBoxList类中受益:您从哪里获得“formCollection”?如果我使用我的form1,就没有所有的键。好吧,在我的例子“form1”中,那么。。。但是当我这样使用它时:var names=form1.AllKeys.Where(c=>c.StartsWith(“idCheckBox”)&&form1.GetValue(c)!=null&&form1.GetValue(c).AttemptedValue==“1”);无法识别AllKey。我正在使用System.Collections…Linq名称空间已经导入:)好吧,当我使用'Request.Form.AllKeys'时,所有键都被识别。奇怪。。。(对不起,不是一个大的c#expert;)