0

我正在使用下面的代码来读取单选按钮列表值。但它总是返回 null。请帮我解决这个问题。

foreach (RepeaterItem item in repeaterItems.Items)
{
    if (item.ItemType == ListItemType.Item || item.ItemType == ListItemType.AlternatingItem)
    {
        lbl_slno = (Label)item.FindControl("id");
        lbl_ques = (Label)item.FindControl("lblques");
        radiobtn = (RadioButtonList)item.FindControl("rdbtn");
        string radio_value = radiobtn.SelectedItem.Value;
        //radio_value return "Object reference not set to an instance of an object."
    }
}

<ItemTemplate>
    <table cellspacing="0" width="100%" align="center">
        <tr>
            <td style="width: 42px;" class="cu_style" >
                <asp:Label ID="id" runat="server" Text='<%#Bind("fld_id")%>'></asp:Label>
            </td>
            <td style="width: 503px;" class="cu_style">
                <asp:Label ID="lblques" runat="server" Text='<%#Bind("fld_Question")%>'></asp:Label>
            </td>
            <td style="width: 80px;" class="cu_style" colspan="3">
                <asp:RadioButtonList ID="rdbtn" Width="229px" runat="server" RepeatDirection="Horizontal" >
                <asp:ListItem Text="Agree">Agree&nbsp;</asp:ListItem>
                <asp:ListItem Text="Neutral">Neutral&nbsp;&nbsp;</asp:ListItem>
                <asp:ListItem Text="Disagree">Disagree</asp:ListItem>
                </asp:RadioButtonList>
            </td>

        </tr>
    </table>
</ItemTemplate>

我的设计代码在这里,..

4

1 回答 1

2

尝试通过获取价值.SelectedValue

if (item.ItemType == ListItemType.Item || item.ItemType == ListItemType.AlternatingItem)
        {
            var rdbList = item.FindControl("rdbtn") as RadioButtonList;
            // Get the selected value
            string selected = radiobtn.SelectedValue;
        }
于 2012-11-07T07:32:39.987 回答