如何区分由ASP.Net Repeater控件生成的HTML发布的数据

本文关键字:HTML 数据 控件 何区 ASP Repeater Net | 更新日期: 2023-09-27 17:58:57

所以我在表单中使用Repeater来显示从数据库中检索到的问题列表。每个问题都允许最终用户选择"是"或"否",并添加一些类似的附加文本。

<ItemTemplate>
   <asp:Panel runat="server">
   <asp:RadioButtonList RepeatDirection="Horizontal" CssClass="YesNo" ID="YesNo" runat="server">
      <asp:ListItem Value="Yes" Text="Yes" />
      <asp:ListItem Value="No" Text="No" />
   </asp:RadioButtonList>
  </asp:panel>
  <asp:Panel runat="server" CssClass="MoreInfo">
     <asp:TextBox ID="TextBox1" TextMode="MultiLine" Height="70px" Rows="10" Columns="25" Wrap="true" runat="server" CssClass="MoreInfoText"></asp:TextBox>
  </asp:Panel>
</ItemTemplate>

中继器被数据绑定到PageLoad事件中的数据表。数据表中字段中的一个是问题的编号。那么,当数据发布时,我如何判断每个答案(是或否以及其他文本)指的是哪个问题?

如果我手动生成HTML,而不是使用服务器控件,我可以只创建将发布数据的HTML元素的名称,如

name=variableHoldingQuestionNumber + YesNo
name=variableHoldingQuestionNumber + AdditionalComments

但在Repeater Item中设置Name属性时,我似乎无法使用变量。放弃服务器控制并自己编写HTML是我唯一的解决方案。

如何区分由ASP.Net Repeater控件生成的HTML发布的数据

将问题编号绑定到一个隐藏字段,当保存返回时,将该隐藏字段收回并从中取出编号。然后您就知道要看的是哪个问题了。

在页面加载上设置一个断点并进行回发。深入查看Request.Form键/值对集合。帖子中的所有内容都将在那里,带有可预测的标签/索引。