我在中继器控件内的中继器控件和外部中有一个隐藏字段。下面是我有的asp.code。ASP.NET中继器控制 - 获得中继器控制内的Hiddenfield值
<asp:Repeater ID="rptAccordian" runat="server" OnItemDataBound="rptAccordian_ItemDataBound">
<ItemTemplate>
<div class="s_panel">
<h1>
<a href="#" data-content="Tool tip"><%# Eval("Name") %></a>
</h1>
<div>
<p>
<small><span style="font-family: 'Segoe UI'; font-weight: bold;">Category Objective: </span><span style="font-family: 'Segoe UI'"><%# Eval("Objective") %></span></small>
</p>
<p>
<small><span style="font-family: 'Segoe UI'; font-weight: bold;">Category Riskscore: </span>
<code><%# Eval("Score") %><span>%</span></code></small>
</p>
<p>
<code>
<img src="Content/img/add.png" /><asp:LinkButton ID="Add" runat="server">Add Question</asp:LinkButton>
</code>
</p>
<asp:HiddenField ID="hdnCategoryID" runat="server" Value='<%# Bind("CategoryID") %>' />
</div>
</ItemTemplate>
</asp:Repeater>
<div id="modalpopup">
<asp:Button ID="btnInsertQuestion" runat="server" Text="Save" OnClick="btnInsertQuestion_Click" />
</div>
我的后端代码如下。
protected void btnInsertQuestion_Click(object sender, EventArgs e)
{
HiddenField hf = (HiddenField)rptAccordian.FindControl("hdnCategoryID");
catID = Convert.ToInt16(hf.Value);
Response.Write("ID is") + catID;
}
有13个中继器,每个中继器都有不同的CategoryID。我有一个链接按钮称为添加每个中继器,当我按下该按钮,我将打开一个模式弹出,它将有一个按钮。单击该按钮时,我需要显示属于该中继器控件的相应CategoryID,在该控件中单击ADD链接按钮。
但是,hiddenfield hf显示为空,我无法获得该手风琴隐藏字段的值。
使用此链接将会有用。 http://stackoverflow.com/questions/29862571/dropdownlist-is-not-showing-the-selected-value –
你正在寻找一个带有“hiddenid”id的'HiddenField',但你的aspx里的实际id是“ hdnCategoryID”。 – dario