怎样在gridview和datalist之类的绑定控件里控制显示 数据省略?
有时为了布局需要,我们通常要把从数据库里取出来的标题只显示我们要求的个数,比如“热烈庆祝空军第一航空学院.......”,这里我是用c#在codebehind文件里加一个函数实现的:
#region 截取新闻标题
public string GetShortTitle(string str_title,int str_lenth)
{
if (str_title.Length > str_lenth)
{
return str_title.Substring(0, str_lenth) + "...";
}
else
{
return str_title;
}
}
函数很简单,只有在龟绿色的那个函数:原型是:
如果前台用的datalist控件,那么在模版里面用这样的方法实现:
<asp:DataList ID="DataList1" runat="server" DataKeyField="id" DataSourceID="recmdnews">
<ItemTemplate>
<a title="<%# Eval("title") %>" href="news/detail.aspx?id=<%# Eval("id") %>"><asp:Label ID="TitleLabel" runat="server" Text='<%# GetShortTitle(Eval("Title").ToString(),8) %>'></asp:Label></a>
</ItemTemplate>
</asp:DataList>
屎黄色代表数据省略的显示,淫红色代表把鼠标放上去的要显示的东西。gridview同理。
用起来也很方便,有意见欢迎大家提!
据俺所知,还有其他方法可以实现,比如js,直接用sql实现,谁用过帮忙贴上来,谢谢!!~~
#region 截取新闻标题
public string GetShortTitle(string str_title,int str_lenth)
{
if (str_title.Length > str_lenth)
{
return str_title.Substring(0, str_lenth) + "...";
}
else
{
return str_title;
}
}
函数很简单,只有在龟绿色的那个函数:原型是:
string substring(string, number, number?)
返回第一个参数中从第二个参数指定的位置开始、第三个参数指定的长度的子字符串。这是c#里面定义的。我就不多解释。
如果前台用的datalist控件,那么在模版里面用这样的方法实现:
<asp:DataList ID="DataList1" runat="server" DataKeyField="id" DataSourceID="recmdnews">
<ItemTemplate>
<a title="<%# Eval("title") %>" href="news/detail.aspx?id=<%# Eval("id") %>"><asp:Label ID="TitleLabel" runat="server" Text='<%# GetShortTitle(Eval("Title").ToString(),8) %>'></asp:Label></a>
</ItemTemplate>
</asp:DataList>
屎黄色代表数据省略的显示,淫红色代表把鼠标放上去的要显示的东西。gridview同理。
用起来也很方便,有意见欢迎大家提!
据俺所知,还有其他方法可以实现,比如js,直接用sql实现,谁用过帮忙贴上来,谢谢!!~~
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步