#c# #asp.net
#c# #asp.net
Вопрос:
Я пытаюсь выяснить, почему этот код не запускает событие смены переключателя.
вот код страницы ASP для двух переключателей
<asp:RadioButton ID="rdoButton1" GroupName="Group1" Text="Yes" Value="Yes" runat="server" OnCheckedChanged="Group1_CheckedChanged" />
<asp:RadioButton ID="rdoButton2" GroupName="Group1" Text="No" Value="No" runat="server" OnCheckedChanged="Group1_CheckedChanged" />
И вот код, лежащий в основе:
protected void Group1_CheckedChanged(Object sender, EventArgs e)
{
if (rdoButton1.Checked) {
panel1.Visible = true;
}
if (rdoButton2.Checked) {
panel1.Visible = false;
}
}
Ответ №1:
Вам нужно будет указать атрибут и значение AutoPostBack="true"
, чтобы сообщить ASP.NET это изменение этого элемента должно вызвать обратную передачу. Это должно быть применено к каждой отдельной кнопке RadioButton, для которой вы хотите вызвать обратную отправку.
Ответ №2:
Вы должны добавить AutoPostBack=True
атрибут к обоим элементам управления.
Комментарии:
1. Но было бы рекомендовано заключить значение в кавычки.
2. AutoPostBack=»true»
Ответ №3:
вы должны указать AutoPostBack=True
для обоих элементов управления
Ответ №4:
Я бы использовал RadioButtonList
вместо этого. И установите AutoPostBack=true
для того, что вы хотите сделать.
Ответ №5:
Вы должны установить значение AutoPostBack = True и в коде за дескрипторами в вашей функции.
Пример:
Protected Sub RadioButton1_CheckedChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles RadioButton1.CheckedChanged
Ответ №6:
Вам просто нужно указать AutoPostBack=True
в обоих элементах управления переключателем, чтобы решить проблему
вот так:
<asp: RadioButton
AutoPostBack=True
ID=»rdoButton1″ GroupName=»Group1″ Text=»Да» Value=»Да» runat=»сервер» onCheckedChanged=»Group1_CheckedChanged» />
<asp: RadioButtonAutoPostBack=True
ID=»rdoButton2″ GroupName=»Group1″ Text=»Нет» Value = «Нет» runat=»сервер» onCheckedChanged =» Группа1_checkedchanged» />