Элемент списка переключателей всегда имеет значение false
-
20-08-2019 - |
Вопрос
Я надеюсь, что вы сможете помочь.Это сбивало меня с толку в течение нескольких часов.
У меня есть список RadioButton на моей странице CustomerGroupConfirm.aspx:
<div>
<table>
<tbody>
<tr>
<td nowrap="nowrap">
<asp:RadioButtonList ID="rblContractGroups" runat="server"></asp:RadioButtonList>
</td>
</tr>
<tr>
<td nowrap="nowrap">
<br />
<asp:Button ID="btnConfirmCustomerContractGroups" runat="server" OnClick="confirmCustomerContractGroups_Click" CssClass="Button" Text="Confirm Default Customer Contract Group" />
</td>
</tr>
</tbody>
</table>
</div>
Я выбираю радиокнопку, и когда я нажимаю на кнопку "Подтвердить группу контрактов с клиентами по умолчанию", вот функция в коде, за которой срабатывает:
protected void confirmCustomerContractGroups_Click(object sender, EventArgs e)
{
// Iterate through the Radio Button list.
foreach (ListItem li in rblContractGroups.Items)
{
if (li.Selected)
// If the Radio Button List Item (Customer Contract Group) is Selected.
{
// Set the Default Customer Contract Group of the Current User.
CustomerAccess.SetDefaultCustomerContractGroup(Int32.Parse(Session["CustomerID"].ToString()), Int32.Parse(li.Value));
}
}
Response.Redirect("~/Default.aspx");
}
Проблема в том, что элемент списка (li.Selected) всегда имеет значение false.
Что я делаю не так?Кто-нибудь может помочь, пожалуйста.
С наилучшими пожеланиями
Уолтер
Решение
Возможно, вы привязываете свой rblContractGroups radiobuttonlist к каждой обратной отправке.Вы должны поместить это в IsPostBack control :
if (!Page.IsPostBack)
{
// Bind your rblContractGroups
}
Не связан с StackOverflow