asp.net用repeater绑定的数据当天新闻后面加NEW图标,我在后台ItemDataBound里面写判断,但是不行,求指点
前台代码如下:
<asp:Repeater ID="reInfoList" runat="server" OnItemDataBound="reInfoList_ItemDataBound">
<HeaderTemplate>
</HeaderTemplate>
<ItemTemplate>
<tr align="left" class="bdf12800000">
<td width="60%" align="left" valign="middle">
<img src="../images/right2.gif" width="18" height="8">
<span class="fff6e0012">[<%# Eval("ForganShortName")%>]</span>
<a href="javascript:vInfoDetail(<%#Eval("ID")%>)">
<%# Eval("FormatTitle")%></a>
<asp:Image ID="img" ImageUrl="~/_layouts/images/New.jpg" runat="server" Visible="false"/>
</td>
<td width="40%" colspan="12" align="right" valign="middle">
[<%# Eval("UserName")%> <%# Eval("DisplayCreateTime")%>]
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</FooterTemplate>
</asp:Repeater>
Img的ID后面是不是还要绑定新闻的ID啊?怎么绑定?
后台在哪写判断改变图片的Visible属性?在线等
答案:假设新闻时间字段为NewsTime
<asp:Image ID="img" ImageUrl="~/_layouts/images/New.jpg" runat="server" Visible="false"/>
修改为
<asp:Image ID="img" ImageUrl="~/_layouts/images/New.jpg" runat="server" Visible='<%# Convert.ToDateTime(Eval("NewsTime")) >=DateTime.Now.Date %>' />
其他:不用绑定新闻的ID,按你现在的方式图片的Visible属性直接在前台判断比较方便。如果在后台,可以用repeater 的ItemDataBound事件绑定
protected void rpList_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item)
{
//判断
}
} 一楼的回答不错 <% if(IsVisible)
{ %>
<asp:Image ID="img" ImageUrl="~/_layouts/images/New.jpg" runat="server" />
<%}%>
后台在写个IsVisible 根据新闻是否new来返回true false
true new图片就显示 false就不显示
上一个:怎么解决asp.net中 File.Exists 权限问题
下一个:asp.net 方面的书籍。 要求{正规,案例丰富鲜明,适合网站方面开饭}