user1800361
user1800361

Reputation:

How to to get hiddenfield value in ItemTemplate

Just want to ask how can I find hiddenfield in repeater because my problem I have button and I want to get the associate hiddenfield inside ItemTemplate because I get null value when I try to get hiddenfield value

  <asp:Repeater ID="rp_resList" runat="server" OnItemDataBound="rp_resList_ItemDataBound">
            <ItemTemplate>
                <div class="resourcesResult">
                    <asp:HiddenField ID="hf_resID" runat="server" Value='<%#  Eval("Id") %>' />
                    <a href='<%#  Eval("pageID") %>'><%#  Eval("name") %></a>
                    <br />
                    <asp:Literal ID="litSummary" runat="server" Text='<%#  Eval("summary") %>'></asp:Literal>
                    <br />
 <%--                   <asp:Repeater ID="rp_tagsSkill" runat="server">
                        <ItemTemplate>
                            <h6>
                                <%#  Eval("Description") %>

                            </h6>
                        </ItemTemplate>
                    </asp:Repeater>--%>
                    <asp:Repeater ID="rp_tagsTopics" runat="server">
                        <ItemTemplate>
                            <h6>
                                <%#  Eval("Description") %>

                            </h6>
                        </ItemTemplate>
                    </asp:Repeater>
                    <div id="controls">
                        <asp:ImageButton ID="imgbtnBookmark" runat="server"   OnClick="imgbtnBookmark_Click" />
                        <asp:DropDownList ID="ddlGroup" runat="server" DataSourceID="SqlDS_Groups" DataTextField="name" DataValueField="id" AppendDataBoundItems="True" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged" >
<asp:ListItem Value="-1">Select Group</asp:ListItem>

protected void imgbtnBookmark_Click(object sender, System.Web.UI.ImageClickEventArgs e)
{
    Bookmark bm = new Bookmark();
    HiddenField hiddenField = rptGroup.FindControl("hf_resID") as HiddenField;
    bm.UserID =  
    Guid.Parse(Membership.GetUser(HttpContext.Current.User.Identity.Name).ProviderUserKey.ToString());
    bm.Resoursce.ResourceID = Convert.ToInt32(hiddenField.Value);
    Bookmark.Insert(bm);
}

Upvotes: 1

Views: 3305

Answers (3)

sharath
sharath

Reputation: 1

jquery

 function showid(dllval) {
            var ID = $(dllval).parent().parent().find('[id*="hiddenID"]').val();
alert(ID)
}

asp.net

<asp:DropDownList ID="ddl" runat="server" onclick="showid(this);" >
 </asp:DropDownList>
<asp:HiddenField ID="hiddenID" runat="server" Value='<%#Eval("ID")%>' />

Upvotes: 0

Zigma
Zigma

Reputation: 529

Change rptGroup.FindControl("hf_resID") as HiddenField; to e.Item.FindControl("hf_resID")....

I hope this link will help you .

Upvotes: 0

rs.
rs.

Reputation: 27467

Try this, change you button tag to pass id as CommandArgument value

<asp:ImageButton ID="imgbtnBookmark" runat="server"   
    OnClick="imgbtnBookmark_Click" 
    CommandArgument='<%#  Eval("Id") %>'/>

in your button click event you can access id using

bm.Resoursce.ResourceID = Convert.ToInt32(e.CommandArgument.ToString());

Upvotes: 1

Related Questions