2011-11-11 36 views
11

Tôi đang cố gắng tìm ra lý do tại sao mã này không kích hoạt sự kiện thay đổi nút radio.Thay đổi nút radio ASP.NET

đây là mã trang ASP cho 2 nút radio

<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" /> 

Và đây là đoạn code sau:

protected void Group1_CheckedChanged(Object sender, EventArgs e) 
{ 
    if (rdoButton1.Checked) { 
     panel1.Visible = true; 
    } 

    if (rdoButton2.Checked) { 
     panel1.Visible = false; 
    } 
} 

Trả lời

28

Bạn sẽ cần phải xác định các thuộc tính và giá trị so AutoPostBack="true" để nói với ASP. NET thay đổi thành phần sẽ kích hoạt đăng lại. Nó nên được áp dụng cho mỗi RadioButton cá nhân mà bạn muốn gây ra một postback.

+0

chết tiệt, một sai lầm ngu ngốc như vậy, cảm ơn rất nhiều, nó làm việc. – Victor

+0

Không phải lo lắng .. :) –

5

Bạn nên thêm thuộc tính AutoPostBack=True vào cả hai điều khiển.

+0

Nhưng nên đặt giá trị trong dấu ngoặc kép. –

4

bạn phải xác định AutoPostBack=True cho cả điều khiển

2

Tôi sẽ sử dụng RadioButtonList để thay thế. Và đặt AutoPostBack=true cho những gì bạn muốn làm.

2

Bạn nên đặt AutoPostBack = True và trong mã phía sau các chốt trong chức năng của bạn.

Ví dụ:

Protected Sub RadioButton1_CheckedChanged(ByVal sender As Object, ByVal e As System.EventArgs)   Handles RadioButton1.CheckedChanged 
Các vấn đề liên quan