解决Asp.net下GridView中显示数据字段文字过长的办法
|
在网页显示时,经常遇到表格或Gridview,Datalist等中数据字段太长的问题。基本办法有两种:1,换行显示;2,先隐藏一部分,当鼠标移动到其位置时,自动将全部内容的显示出来。本文主要讲述如何采用ToolTip实现第二种解决办法。 一、使用GridView自带ToolTip属性。 protected void gvToolTip_DataBound(object sender, EventArgs e) { // 演示ToolTip,使用GridView自带的ToolTip for(int i=0; i< gvToolTip.Rows.Count; i++) { gvToolTip.Rows[i].Cells[3].ToolTip = gvToolTip.Rows[i].Cells[3].Text; if (gvToolTip.Rows[i].Cells[3].Text.Length > 18) gvToolTip.Rows[i].Cells[3].Text = gvToolTip.Rows[i].Cells[3].Text.Substring(0, 15) + "..."; } }
二、写段JavaScript代码,并在页面上增加一ToolTip层 添加DataBound函数
protected void gvToolTip_DataBound(object sender, EventArgs e) { // 演示ToolTip,使用外建的Javascript函数 gvToolTip.Rows[0].Cells[3].Attributes.Add("OnMouseOver", Convert2Tooltip(gvToolTip.Rows[0].Cells[3].Text)); gvToolTip.Rows[0].Cells[3].Attributes.Add("OnMouseOut", "javascript:toolTip();"); if (gvToolTip.Rows[0].Cells[3].Text.Length > 18) gvToolTip.Rows[0].Cells[3].Text = gvToolTip.Rows[0].Cells[3].Text.Substring(0, 15) + "..."; }
其中Convert2Tooltip为处理字符串函数,它将’转为\’,否则无法显示含’的字段 三、两种方法的比较 当然还有一种最最简单的办法,就是利用网页控件的style隐藏过长的文字: white-space:nowrap;
text-overflow:ellipsis;
overflow: hidden;
|
浙公网安备 33010602011771号