【发布时间】:2013-06-18 12:27:11
【问题描述】:
我正在使用 ASP.NET Repeater 来显示 <table> 的内容。它看起来像这样:
<table cellpadding="0" cellspacing="0">
<asp:Repeater ID="checkboxList" runat="server" OnItemDataBound="OnCheckboxListItemBound">
<ItemTemplate>
<tr id="itemRow" runat="server">
<td>
Some data
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>
它工作正常,但我想在ItemTemplate 中有一个if() 语句,这样我可以有条件地确定是否要打印出<tr> 标记。
所以我想要这样的东西:
<table cellpadding="0" cellspacing="0">
<asp:Repeater ID="checkboxList" runat="server" OnItemDataBound="OnCheckboxListItemBound">
<ItemTemplate>
<% if ( (CurrentItemCount % 2) == 0 ) { %?>
<tr id="itemRow" runat="server">
<% } %>
<td>
Some data
</td>
<% if ( (CurrentItemCount % 2) == 0 ) { %?>
</tr>
<% } %>
</ItemTemplate>
</asp:Repeater>
</table>
有什么方法可以实现吗?
PS。 CurrentItemCount 刚刚编好。我还需要一种方法来获取 if() 语句中的当前项目数。但我似乎只能从<%# Container.ItemIndex; %> 获得它,它不能与if() 语句一起使用?
【问题讨论】:
-
不能使用gridview显示表格数据有什么原因吗?
-
@Bartdude 是的,我正在调整现有代码,我真的不想重写很多功能。因此,如果我的代码能够以某种方式实现,那么我真的很想坚持下去。
标签: c# asp.net repeater itemtemplate