繁体   English   中英

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

[英]Input string not in correct format (Radiobuttonlist) asp.net

我正在尝试从单选按钮检索文本以在我的sql查询中使用。 我输入的是:

 int cardtype = int.Parse(rbcard.SelectedItem.Text);

并发生错误

 Input string not in correct format

似乎是什么问题?

可以说单选按钮列表如下:

 <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 );

希望这可以帮助您

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

您的代码对我来说看起来是正确的,我只需要确保在尝试解析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;
        }
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM