-1
這基本上就是我想做的事:如何在我的Web表單上的特定控件上執行FOREACH循環?
foreach (checkbox cbx in Controls.Checkboxes)
{
if (checkbox.checked)
{
//code
}
}
在我的網頁上,有2個複選框。我想爲頁面上的每個選定項目運行一個進程。
這基本上就是我想做的事:如何在我的Web表單上的特定控件上執行FOREACH循環?
foreach (checkbox cbx in Controls.Checkboxes)
{
if (checkbox.checked)
{
//code
}
}
在我的網頁上,有2個複選框。我想爲頁面上的每個選定項目運行一個進程。
如果我正確理解你的問題,你想循環checkboxlist控件的每個複選框並獲取值。
如果是這樣,這裏是一個例子。
<asp:CheckBoxList runat="server" ID="CheckBoxList1">
<asp:ListItem Text="One" Value="1" />
<asp:ListItem Text="Two" Value="2" />
<asp:ListItem Text="Three" Value="3" />
</asp:CheckBoxList>
<asp:Button runat="server" ID="Button1" Text="Submit" OnClick="Button1_Click" />
protected void Button1_Click(object sender, EventArgs e)
{
foreach (ListItem item in CheckBoxList1.Items)
{
if (item.Selected)
{
string text = item.Text;
string value = item.Value;
// Do something
}
}
}
如果您詢問個別複選框,請單擊我之前編輯的答案。
你應該可以使用'OfType',例如'Controls.OfType()' –
是的,你可以做什麼@ sa_ddam213說。但是,創建列表並將複選框添加到該列表中可能會更好,因此如果添加更多不希望被循環的複選框,它將支持該列表。 –
mason
如果只有兩個,那麼可以將邏輯置於'if'語句的自己的方法中,然後對每個語句調用'if(checkBoxName.Checked)SomeMethodToRun();'。 –