输入字符串格式不正确(Radiobuttonlist)asp.net

时间:2017-01-26 16:40:12

标签: asp.net radiobuttonlist

我正在尝试从radiobutton中检索文本以在我的sql查询中使用。 我输入了这个:

 Input string not in correct format

并发生错误

DateTimePicker

什么似乎是问题?

2 个答案:

答案 0 :(得分:0)

让我们说单选按钮列表如下:

 <asp:RadioButtonList ID="rdID" runat="server">

<asp:ListItem Text ="Item1" Value="1" />
<asp:ListItem Text ="Item2" Value="2" />
<asp:ListItem Text ="Item3" Value="3" />
<asp:ListItem Text ="Item4" Value="4" />

</asp:RadioButtonList>

然后获取所选值:

string selectedValue = rdID.SelectedValue;
        Response.Write(selectedValue);

然后在将值作为字符串获取之后,您可以将其解析为int,如:

int x = Int32.Parse(selectedValue );

希望这可以帮到你

答案 1 :(得分:0)

看起来您实际上是在尝试解析单选按钮列表项的文本而不是值。

您的代码对我来说是正确的,我会确保您在尝试解析int之前检查项目是否已被选中。

<强> HTML

<asp:RadioButtonList ID="rbcard" runat="server">

<asp:ListItem Text ="1" Value="1" />
<asp:ListItem Text ="2" Value="2" />
<asp:ListItem Text ="3" Value="3" />
<asp:ListItem Text ="4" Value="4" />

</asp:RadioButtonList>

<asp:Button ID="btn1" runat="server" OnClick="Button1_Click" Text="select value" />
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>

代码背后

protected void Button1_Click(object sender, EventArgs e)
    {
        if (rbcard.SelectedItem != null)
        {
            int cardtype = int.Parse(rbcard.SelectedItem.Text);
            Label1.Text = "You Selected: " + cardtype;
        }
    }