Repeater 控件 当数据源没有数据的时候显示 暂无数据 的两种方式
第一种:现在前台给Repeater控件外面的div加一个runat=”server” 然后在cs后台判断数据源是否为空, 是的话就修改这个前台div的InnerText或者是InnerHtml 即可
//后台判断是否为空 if (ds.Tables[0].Rows.Count <= 0) { asd.InnerText = "暂时没有数据"; //asd.InnerHtml ="<center><br><br><br><br><img src='/images/hint.png' alt='暂无数据'/><br>查无数据<br><br><br><br></center>";
} Repeater1.DataSource = ds; Repeater1.DataBind(); //前台代码 <div id="asd" runat="server"> <asp:Repeater ID="Repeater1" runat="server"> <ItemTemplate> <%# Eval("title") %> </ItemTemplate> </asp:Repeater> </div>
第二种,直接在 Repeater控件的FooterTemplate里面扩展
<asp:Repeater ID="RptrA" runat="server"> <ItemTemplate> </ItemTemplate> <FooterTemplate> <asp:Label ID="lblEmpty" Text="<center><br><br><br><br><img src='/images/hint.png' alt='暂无数据'/><br>查无数据<br><br><br><br></center>" runat="server" Visible='<%#bool.Parse((RptrA.Items.Count==0).ToString())%>'> </asp:Label> </FooterTemplate> </asp:Repeater>
两种的效果都是一样的
效果如下