2011-02-01 42 views
2

我已經找到了這段代碼,但我想知道是否有更簡化的方法來做到這一點。asp.net - 以單選按鈕組的形式獲取所選項目的文本

因此,例如,而不是所有的if語句,你可以有一行寫着Label1.text = 「您選擇了」 & RadioGroup1.Text

Sub SubmitBtn_Click(Sender As Object, e As EventArgs) 
    If Radio1.Checked Then 
     Label1.Text = "You selected " & Radio1.Text 
    ElseIf Radio2.Checked Then 
     Label1.Text = "You selected " & Radio2.Text 
    ElseIf Radio3.Checked Then 
     Label1.Text = "You selected " & Radio3.Text 
    End If 
    End Sub 

<asp:RadioButton id=Radio1 Text="Typical" Checked="True" GroupName="RadioGroup1" runat="server" /> 

    <asp:RadioButton id=Radio2 Text="Compact" GroupName="RadioGroup1" runat="server"/> 

    <asp:RadioButton id=Radio3 Text="Full" GroupName="RadioGroup1" runat="server" /> 

    <asp:Button text="Submit" OnClick="SubmitBtn_Click" runat=server/> 

    <asp:Label id=Label1 Font-Bold="true" runat="server" /> 

回答

4

你可以使用<asp:radiobuttonlist>將其編號爲radio1。然後在那裏分開<asp:listitem>。使用不同的value設置每個列表項目,即典型,聯繫人,完整。然後,所有你需要在SubmitBtn_Clickradio1.SelectedItem.Value

1

在RadioButtonList將有助於減少代碼:

<p> 
    <strong>Output:</strong> 
    <asp:Label runat="server" ID="lOut" /> 
</p> 
<asp:RadioButtonList runat="server" ID="rblist1" AutoPostBack="true"  onselectedindexchanged="rblist1_SelectedIndexChanged" > 
    <asp:ListItem Value="1">One</asp:ListItem> 
    <asp:ListItem Value="2">Two</asp:ListItem> 
    <asp:ListItem Value="3">Three</asp:ListItem> 
</asp:RadioButtonList> 


protected void rblist1_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    this.lOut.Text = string.Format("RadioButton: selected: {0}={1} ", rblist1.SelectedItem.Text, rblist1.SelectedValue); 
} 
0
string valueName = Radio3.Text; 
相關問題