1

我有一个这样的数据列表:

<asp:DataList ID="DataList1" runat="server" BackColor="White" BorderColor="#CC9966"
        BorderStyle="None" BorderWidth="1px" CellPadding="4" GridLines="Both" RepeatColumns="3"
        onitemdatabound="DataList1_ItemDataBound">
        <FooterStyle BackColor="#FFFFCC" ForeColor="#330099" />
        <HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="#FFFFCC" />
        <ItemStyle BackColor="White" ForeColor="#330099" />
        <ItemTemplate>
            <table>
                <tr>
                    <td style="width:10px">
                        <asp:RadioButton ID="rd_CS" runat="server" GroupName="Casi" 
                         oncheckedchanged="rd_CS_CheckedChanged" Text='<%# Eval("Key")%>'></asp:RadioButton>
                    </td>
                    <td>
                        <asp:Image ID="Img_Nhacsi" runat="server" ImageUrl='<%#Eval("Hinhanh")%>' Width="75px"
                            Height="75px" BorderColor="#66FF33" />
                    </td>
                    <td>
                        <asp:Label ID="lbl_Ten" runat="server" Text='<%#Eval("Name")%>'></asp:Label>
                    </td>
                    <td>
                        <asp:Label ID="lbl_Ngaysinh" runat="server" Text='<%#Eval("Birthdate")%>'></asp:Label>
                    </td>
                    <td>
                        <asp:Label ID="Label2" runat="server" Text='<%#Eval("Country")%>'></asp:Label>
                    </td>
                </tr>
            </table>
        </ItemTemplate>
        <SelectedItemStyle BackColor="#FFCC66" Font-Bold="True" ForeColor="#663399" />
    </asp:DataList>

我在页面中有一个按钮提交。单击提交按钮时如何获取选中单选按钮的文本?任何帮助都会很棒。

4

2 回答 2

1

Request.Form["rdGroup"]用来获取价值。

如果您想在数据列表的上下文中获取它,那么使用当前代码是不可能的。您需要添加runat="server"到单选按钮,然后您可以遍历项目并使用该Find方法获取对单选按钮控件的引用。

于 2013-10-27T09:41:17.090 回答
0

可能你需要这样的东西(归功于 Guffa):

string myRadioText = String.Empty;

foreach (DataListItem item in DataList1.Items)    
{    
    RadioButton rd_CS = (RadioButton)item.FindControl("rd_CS");

    if(rd_CS != null && rd_CS.Checked)
    {
        myRadioText = rd_CS.Text;
    }    
}
于 2013-10-28T01:31:45.237 回答