表单中有DropDownList和CheckBoxList。
DropDownList中的值应该根据选择CheckBoxList而改变
当您选择(单击)元素时,DropDownList中的值会发生变化,
如果不检查回来没有改变(它仍然一样高)
aspx:
Risk:
<asp:UpdatePanel ID="UpRisk" runat="server" UpdateMode="always">
<ContentTemplate>
<asp:DropDownList ID="ddlRiskLevel" runat="server" Enabled="false" AutoPostBack="True">
<asp:ListItem Text="Low" Value="1" Selected="True" />
<asp:ListItem Text="High" Value="2" />
</asp:DropDownList>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpdatePanel24" runat="server" UpdateMode="always">
<ContentTemplate>
Sign:
<asp:CheckBoxList ID="chbList_Risks" runat="server">
<asp:ListItem> Sign1 </asp:ListItem>
<asp:ListItem> Sign2 </asp:ListItem>
<asp:ListItem> Sign3 </asp:ListItem>
</asp:CheckBoxList>
</ContentTemplate>
</asp:UpdatePanel> 代码:
protected void Page_Load(object sender, EventArgs e)
{
foreach (ListItem item in chbList_Risks.Items)
{
if (item.Selected)
ddlRiskLevel.SelectedValue = "2";
}
}发布于 2016-12-29 06:00:23
你没有做任何不检查的事情,试试下面的方法
foreach (ListItem item in chbList_Risks.Items)
{
if (item.Selected)
{
ddlRiskLevel.SelectedValue = "2";
break;
}
else
{
ddlRiskLevel.ClearSelection();
}
}发布于 2016-12-29 06:00:57
试试看这段代码能正常工作
foreach (System.Web.UI.WebControls.ListItem item in chbList_Risks.Items)
{
if (item .Selected == true)
{
value = item .Text;
if (value == "ABC")
{
ddlRiskLevel.SelectedValue = "2";
}
}
else
{
value = item .Text;
if (value == "XYZ")
{
ddlRiskLevel.ClearSelection();
}
}
}https://stackoverflow.com/questions/41373632
复制相似问题