2012-05-02 3 views
1

У меня есть следующие Radiobuttons:розжиг OnCheckedChanged события с ASP: RadioButton

<asp:RadioButton id="rdoStandard" runat="server" Checked="true" GroupName="delivery" OnCheckedChanged="Check_Clicked" /> 

<asp:RadioButton ID="rdoExpress" runat="server" GroupName="delivery" OnCheckedChanged="Check_Clicked" /> 

<asp:RadioButton ID="rdoNextDay" runat="server" GroupName="delivery" OnCheckedChanged="Check_Clicked" /> 

А в коде позади меня есть это:

Protected Sub Check_Clicked(ByVal sender As Object, ByVal e As EventArgs) Handles rdoStandard.CheckedChanged, rdoExpress.CheckedChanged, rdoNextDay.CheckedChanged 
      RaiseEvent DeliveryOptionChanged() 
     End Sub 

Я попытался выше, но и пробовал разные способы, такой как метод щелчка для каждого из RadioButtons, и я никогда не ударял метод Check_Clicked.

Я не хочу AutoPostBack, и не могу понять, почему вы хотели бы, если бы вы увольняли событие?

Его было время, так как я использовал VB и WebForms, может ли кто-нибудь помочь мне в этом?

ответ

5

Вам необходимо установить значение AutoPostBack в значение true, если вы хотите немедленно вызвать событие, по умолчанию false.

<asp:RadioButton id="rdoStandard" AutoPostback="true" runat="server" Checked="true" GroupName="delivery" OnCheckedChanged="Check_Clicked" /> 

Обратите внимание, что RadioButton наследует от CheckBox, для этого он наследует AutoPostback свойство оттуда

Edit: Если вы хотите, чтобы избежать постбэк, это событие также поднял на следующий туда и обратно в сервер, если вы не установили AutoPostback в true. Например, вы можете использовать кнопку отправки, оба, кнопки Button, а также события ClickBox, создаются последовательно.

+0

делает AutoPostback причиной обновления всей страницы? – DevDave

+0

@Tyler: Если вы не используете ASP.NET-Ajax, да, как каждый postback. Отредактировал мой ответ. –

+0

Итак, можно ли запустить событие и предотвратить обратную передачу с помощью ASP.NET-Ajax? И не могли бы вы показать мне, как? – DevDave

Смежные вопросы