ASP 中继器从单选按钮收集数据

本文关键字:数据 单选按钮 中继器 ASP | 更新日期: 2023-09-27 18:30:45

所以我有一个Asp repeater,可以打印出用户将用来回答测试的一些radiobuttons。我需要做的是检查检查了哪些radiobuttons,以便我可以将它们保存到 XML 文件中。

这是代码

        <asp:Repeater ID="Repeater1" runat="server">
            <ItemTemplate>
                <div class="repeaterDiv">
                    <ul id="list">
                        <li style="list-style: none">
                            <p style="font-weight: bold">Fråga nummer: <%# Container.ItemIndex + 1 %></p>
                            <asp:Label ID="q1_label" runat="server" Text='<%#Eval ("text")%>'></asp:Label>
                            <asp:CheckBox ID="q1_svar1" Text='<%#Eval("q1")%>' runat="server" CssClass="radioButtons;" />
                            <asp:CheckBox ID="q1_svar2" Text='<%#Eval("q2")%>' runat="server" CssClass="radioButtons;"/>
                            <asp:CheckBox ID="q1_svar3" Text='<%#Eval("q3") %>' runat="server" CssClass="radioButtons;"/>
                            <asp:CheckBox ID="q1_svar4" Text='<%#Eval("q4") %>' runat="server" CssClass="radioButtons;"/>
                            <hr />
                        </li>
                    </ul>
                </div>
            </ItemTemplate>
        </asp:Repeater>

我真的不知道如何定位检查的人,我从这里做什么?提前谢谢。

ASP 中继器从单选按钮收集数据

您可以在中继器项中使用foreach循环,并且它们用户 查找控件方法

  protected void Button1_Click(object sender, EventArgs e)
    {
        foreach (RepeaterItem item in Repeater1.Items)
        {
            CheckBox chk = (CheckBox)item.FindControl("q1_svar1");
            if (chk.Checked)
            {
                //Your code ...
            }
        }
    }