在列表框中未选择任何项时禁用 asp 按钮
本文关键字:asp 按钮 任何项 选择 列表 | 更新日期: 2023-09-27 18:35:44
如果列表框中未选择任何项目,我希望禁用我的按钮。我将按钮启用设置为 false。选择某个项时,该按钮会启用 true,但是,启用该按钮后,如果未选择任何列表项,则不会禁用该按钮。
代码隐藏:
protected void Button2_Click(object sender, EventArgs e)
{
List<ListItem> itemsRemove = new List<ListItem>();
foreach (ListItem listItem in ListBox1.Items)
{
if (listItem.Selected)
itemsRemove.Add(listItem);
}
foreach (ListItem listItem in itemsRemove)
{
ListBox1.Items.Remove(listItem);
}
}
protected void ListBox1_SelectedIndexChanged(object sender, EventArgs e)
{
foreach (ListItem item in ListBox1.Items)
{
if (item.Selected)
{
Button2.Enabled = true;
}
}
}
试试这个:
protected void ListBox1_SelectedIndexChanged(object sender, EventArgs e)
{
Button2.Enabled = false;
foreach (ListItem item in ListBox1.Items)
{
if (item.Selected)
{
Button2.Enabled = true;
}
}
}
但它不是此类功能的最佳解决方案,最好使用一些 javascript 代码来启用/禁用您的按钮。
编辑(最小解决方案):
protected void ListBox1_SelectedIndexChanged(object sender, EventArgs e)
{
Button2.Enabled = ListBox1.Items.Any(x => x.Selected);
}
您还应该将ListBox
属性设置为true
AutoPostBack
并且按钮和ListBox
EnableViewState
都必须设置为true
。