原先的绑定方法是
- HTML code
<ItemTemplate><tr> <td><a target=_blank href='news/html/<%#Eval("html") %>'><%# Eval("bt") %></a></td></tr> </ItemTemplate>
一共12条记录,也就是有12行1列
现在想改成六行2列,数据源还是原来的DataTable
这样是不行的
- HTML code
<tr> <td><a target=_blank href='news/html/<%#Eval("html") %>'><%# Eval("bt") %></a></td> <td><a target=_blank href='news/html/<%#Eval("html") %>'><%# Eval("bt") %></a></td></tr>
应该怎么改
------解决方案--------------------------------------------------------
.. 你可以简单的用交替项模板来实现,但这样就必须确保数据是偶数行以保证 <tr> 标签封闭。。
- HTML code
<ItemTemplate><tr> <td><a target=_blank href='news/html/<%#Eval("html") %>'><%# Eval("bt") %></a></td></ItemTemplate><AlternatingItemTemplate> <td><a target=_blank href='news/html/<%#Eval("html") %>'><%# Eval("bt") %></a></td></tr></AlternatingItemTemplate>
------解决方案--------------------------------------------------------
楼上说的对,这样只算一条记录
试试DataList,DataList可以设置列
如果一定要使用Repeater,可以考虑使用两个模板<ItemTemplate>,<speratorItemTemplate>
如:(只有输出记录在偶数条的情况下有效,否则html可能无法正常显示)
<ItemTemplate>
<tr>
<td><a target=_blank href='news/html/<%#Eval("html") %>'><%# Eval("bt") %></a></td>
</ItemTemplate>
<SeparatorItemTemplate>
<td><a target=_blank href='news/html/<%#Eval("html") %>'><%# Eval("bt") %></a></td>
</tr>
</SeparatorItemTemplateItemTemplate>
------解决方案--------------------------------------------------------
试了下最简单的例子:
<asp:Repeater ID="Repeater1" runat="server" DataSourceID="SqlDataSource1">
<ItemTemplate>
<div style="float:left;width:49%;"><%# Eval("BoardTitle") %></div>
</ItemTemplate>
</asp:Repeater>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:FDBConnectionString %>"
SelectCommand="SELECT [BoardID], [BoardTitle] FROM [Board]"></asp:SqlDataSource>