如何使用asp.net在转发器控件中获取codebehind上的hiddenfield id [英] how to get hiddenfield id on codebehind in a repeater control using asp.net

查看:66
本文介绍了如何使用asp.net在转发器控件中获取codebehind上的hiddenfield id的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何使用asp.net在转发器控件中获取codebehind上的hiddenfield id。

这里是我的代码:





< asp:Repeater ID =Repeater1runat =server>

< ItemTemplate>

< div class =item缩略图>

< div class =art-im>





< a href =/ Articles.aspx?Id =<%#Eval(Id)%>>

< asp:Image runat =serverWidth =240px高度=135pxID =smrImageUrl ='<%#Picture(Eval(PicturePathId))%>'/>< / a>< / div>

< div class =art-cont>

< div class =art-head-part>

< a class =art -catehref =/ Articles.aspx?Id =<%#Eval(Id)%>>

<%#Eval(Domain)%>< / a>

< h3 class =art-tit>

< a href =/ Articles.aspx?Id =<%#Eval(Id)%>>

<%#Eval(Title)。ToString( ).Substring(0,Math.Min(45,Eval(Title)。ToString()。Length))+....%>< / a>

< ; / h3>

< / div>

< div class =art-foot-part>

< asp :LinkBut​​ton ID =linkSharerunat =serverOnClick =AdminEdit_OnClick> Share< / asp:LinkBut​​ton>

< asp:HiddenField ID =blogidrunat =serverValue ='<%#Eval(Id)%>'/>



< a id =imgsharehref =#?w = 500class =poplight1rel =弹出窗口Sharev>< span>< b> 1.3K< / b>

Shares< / span> < / a>

< / div>

< / div>

< / div>

< / ItemTemplate>

< AlternatingItemTemplate>

< div class =item large>

< div class =art-im>

< a href =/ Articles.aspx?Id =<%#Eval(Id)%>>

< asp:Image runat =serverHeight =300pxWidth =450pxID =smrImageUrl ='<%#Picture(Eval(PicturePathId))%>'/ gt ;< / a>< / div>

< div class =art-cont>

< div class =art-head-part big-cont>

< a class =art-catehref =/ Articles.aspx?Id =<%#Eval(Id)%>> <%#Eval(Domain)%>< / a>

< h3 class =art-tit>

< a href =/ Articles.aspx?Id =<%#Eval(Id)%>>

<%#Eval(Title)%>< / a>

< / h3>

< p class =art-p>

<%#Eval(Description)。ToString()。Substring(0,Math.Min(250,Eval(Description)。ToString( ).Length))+....%>

< / p>

< / div>

< ; div class =art-foot-part>

< asp:LinkBut​​ton ID =linkSharerunat =serverOnClick =AdminEdit_OnClick> Share< / asp:LinkBut​​ton>

< asp:HiddenField ID =blogidrunat =serverValue ='<%#Eval(Id)%>'/>



< a id =imgsharehref =#?w = 500class =poplight1 =popupSharev>< span>< b> 1.3 K< / b>

股份< / span> < / a>

< / div>

< / div>

< / div>

< / AlternatingItemTemplate>

< / asp:Repeater>



protected void AdminEdit_OnClick(object sender,EventArgs e)

{



HiddenField hf =(HiddenField)Repeater1.FindControl(blogid);

Response.Write( Blogid+ hf);

}



我得到了空值。

请帮帮我..

谢谢.......

how to get hiddenfield id on codebehind in a repeater control using asp.net.
here is my code:


<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<div class="item thumbnail">
<div class="art-im">


<a href="/Articles.aspx?Id=<%# Eval("Id")%>">
<asp:Image runat="server" Width="240px" Height="135px" ID="smr" ImageUrl='<%#Picture(Eval("PicturePathId"))%>' /></a></div>
<div class="art-cont">
<div class="art-head-part">
<a class="art-cate" href="/Articles.aspx?Id=<%# Eval("Id")%>">
<%# Eval("Domain") %></a>
<h3 class="art-tit">
<a href="/Articles.aspx?Id=<%# Eval("Id")%>">
<%# Eval("Title").ToString().Substring(0, Math.Min(45, Eval("Title").ToString().Length)) + "...."%></a>
</h3>
</div>
<div class="art-foot-part">
<asp:LinkButton ID="linkShare" runat="server" OnClick="AdminEdit_OnClick" >Share</asp:LinkButton>
<asp:HiddenField ID="blogid" runat="server" Value='<%# Eval("Id")%>' />

<a id="imgshare" href="#?w=500" class="poplight1" rel="popupSharev"><span><b>1.3K</b>
SHARES</span> </a>
</div>
</div>
</div>
</ItemTemplate>
<AlternatingItemTemplate>
<div class="item large">
<div class="art-im">
<a href="/Articles.aspx?Id=<%# Eval("Id")%>">
<asp:Image runat="server" Height="300px" Width="450px" ID="smr" ImageUrl='<%#Picture(Eval("PicturePathId"))%>' /></a></div>
<div class="art-cont">
<div class="art-head-part big-cont">
<a class="art-cate" href="/Articles.aspx?Id=<%# Eval("Id")%>"><%# Eval("Domain") %></a>
<h3 class="art-tit">
<a href="/Articles.aspx?Id=<%# Eval("Id")%>">
<%# Eval("Title") %></a>
</h3>
<p class="art-p">
<%# Eval("Description").ToString().Substring(0, Math.Min(250, Eval("Description").ToString().Length)) + "...."%>
</p>
</div>
<div class="art-foot-part">
<asp:LinkButton ID="linkShare" runat="server" OnClick="AdminEdit_OnClick" >Share</asp:LinkButton>
<asp:HiddenField ID="blogid" runat="server" Value='<%# Eval("Id")%>' />

<a id="imgshare" href="#?w=500" class="poplight1" rel="popupSharev"><span><b>1.3K</b>
SHARES</span> </a>
</div>
</div>
</div>
</AlternatingItemTemplate>
</asp:Repeater>

protected void AdminEdit_OnClick(object sender, EventArgs e)
{

HiddenField hf = (HiddenField)Repeater1.FindControl("blogid");
Response.Write("Blogid" + hf);
}

I got null value.
Please help me..
Thank you.......

推荐答案

尝试下面

try below
var btn =  (Button)sender;
var item = (RepeaterItem)btn.NamingContainer;
var hf =  (HiddenField) item.FindControl("blogid");
Response.Write("Blogid" + hf.Value);


隐藏字段位于项目模板内,必须先获取项目,然后在此项目中找到控件。看看这个: Find + control + inside + of + a +转发器+ C + [ ^ ]
the hiddenfield is inside the item template, must get the item first, then find the control in this item. Check this out: Find+control+inside+of+a+repeater+C+[^]


这篇关于如何使用asp.net在转发器控件中获取codebehind上的hiddenfield id的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆