取repeater中label的值
方法一:
Label lblid=(Label )eItemFindControl("lblid");
lblidText //就可以取值啦
(注:这段代码的位置应该放在Repeater自带的方法中,e代表当前行,如ItemCommand,ItemDataBound)
方法二:
Label lblid=(Label )repeaterListSNItems[i]FindControl("lblid");
lblidText //取值
(注:i代表第几行)
纠正一点,楼主的写法巩怕有点问题,对象获取不明确
其实这段代码可以更简单一点,供楼主参考一下
<asp:Repeater ID="repeaterListSN" runat="server"
onitemcommand="repeaterListSN_ItemCommand">
<ItemTemplate>
<tr>
<td>
<%#Eval("UserID") %>
<asp:LinkButton ID="lbtn" runat="server" CommandArgument='<%#Eval("UserID") %>' CommandName="delete">删除</asp:LinkButton><!--记住这里绑定值的时候一定要用单引号-->
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
后台代码:
后台
protected void repeaterListSN_ItemCommand(object source, RepeaterCommandEventArgs e)
{
if (eCommandName=="delete")
{
int id=ConvertToInt32(eCommandArgument);
Qol_UserInfo u = new Qol_UserInfo();
if (uDelete(id))
{
ResponseWrite("<script>alert('删除成功');location='Peopleaspx'</script>");
}
else
{
ResponseWrite("<script>alert('删除失败')</script>");
}
}
}
<table>
<asp:Repeater ID="repPeople" runat="server">
<ItemTemplate>
<tr>
人
</tr>
<asp:Repeater ID="repLastWeekWork" runat="server">
<ItemTemplate>
<tr>
上个星期工作
</tr>
</ItemTemplate>
</asp:Repeater>
<tr>
人
</tr>
<asp:Repeater ID="repThisWeekWork" runat="server">
<ItemTemplate>
<tr>
本周工作
</tr>
</ItemTemplate>
</asp:Repeater>
</ItemTemplate>
</asp:Repeater>
</table>
我个人来看,你这里需要在内部嵌套2个repeater,一个用来绑定上周工作情况,一个用来绑定本周工作情况。
而最外层的repeater的数据源是List<People>,然后根据PeopleID传递到上周工作情况表,与本周工作情况表中。查询数据,绑定给嵌套的两个repeater
<asp:Repeater ID="rptNews" runat="server" onprerender="rptNews_PreRender">
<HeaderTemplate>
<table border="1">
<tr>
<th>选择</th>
<th>id</th>
<th>标题</th>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td><asp:CheckBox ID="cbx" runat="server" /></td>
<td><asp:Label id="lbl" Text='<%#Eval("id_news") %>' runat="server" ></asp:Label></td>
<td><%#Eval("title_news") %></td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
Repeater是需要嵌套模板才能显示的,上面设置了一些简单的,你可以对着自己嵌套。然后后台给Repeater绑定数据源显示信息。
前台 Repeater 中绑定了 N 个 input ,且不使用 runat=server ,此时当然用经典ASP 的方法了 RequestForm注意:每个 input 必须具有 name,如果没有 name 你的input根本不会被提交,因为>
简单,你在ItemDataBound事件里面,用FindControl获取这个对象就行了。
例如 HtmlGenericControl td = (HtmlGenericControl)eItemFindControl("tdtd");
if (td!=null)
Repeater 控件是一个容器控件,可用于从网页的任何可用数据中创建自定义列表。Repeater 控件没有自己内置的呈现功能,这意味着用户必须通过创建模板来提供 Repeater 控件的布局。当网页运行时,Repeater 控件会循环通过数据源中的记录,并为每个记录呈现一个项。
详见
>
我举一个实例吧:比如我
<table>
<tr>
<td>中国</td>>
<td>中国</td>
</tr>
</table>
就是把共同的部份抽出来<td>中国</td>
<table><tr>
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate ><td><%#Eval(绑定数据 )%></td></ItemTemplate>
</ItemTemplate>
</asp:Repeater>
</tr>
</table>
以上就是关于.net怎么获取Repeater中lable的值全部的内容,包括:.net怎么获取Repeater中lable的值、Repeater嵌套循环出来的数据怎么是重复的,应该怎么解决啊,上图、c#Repeater到底怎么用等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)