网上查了很多资料都没有找到给下拉框中的下拉项加入描述,就是如图片中的“alt”,文字中的“title”。
很多人直接说是没有办法解决的问题!最近做个项目发现需要这个功能,四处找资料未果。就只有自己的diy了。
1、经测试,<option value="Select Games" title="Select Games">- Select Games -</option>
这样写在ie7.0以上,以及ff浏览器上都是可以显示出下拉项的描述的。就像图片加上"alt"内容后鼠标移上去3秒就会显示alt中的内容。
2、怎么在给DropDownList这类服务器控件的绑定数据时加入title这个属性了,直接绑定就不能实现这个功能了。 就的换种方式了!我的方式:
cs:
string selectstr = "select * from TB_Game where Fld_Enable = 1 and Fld_SaleEnable =1 order by Fld_OrderBy";
DataSet sds = new DataSet();
sds = MMO.DBUtility.DbHelperSQL.Query(selectstr);
StringBuilder str =new StringBuilder();
str.Append("<select name='FastGold1$GameDDL' id='FastGold1_GameDDL' onchange='ServerData(this.value)' style='width:125px;'>");
str.Append("<option selected='true'>- Select Games -</option>");
for (int i = 0; i < sds.Tables[0].Rows.Count; i++)
{
try
{
str.Append("<option value=" + sds.Tables[0].Rows[i]["Fld_GameId"].ToString() + " Title='" + sds.Tables[0].Rows[i]["Fld_GameFullName"].ToString() + "' >" + sds.Tables[0].Rows[i]["Fld_GameFullName"].ToString() + "</option>");
}
catch { }
}
str.Append("</select>");
this.GameL.Text = str.ToString();
aspx: <asp:Literal ID="GameL" runat="server"></asp:Literal></TD>
原理很简单,就是直接在后台用Response输出服务器控件在html页面的源代码。在这个过程中加入我们需要的描述内容title=“描述内容”。然后再用Literal控件来输出到指定的位置。必须用Literal控件而不能使用Lable。因为Literal不会对输出的内容加<span>。才能正确显示下拉框以及其中的事件。
----www.shicun108.cn
本文介绍了一种在 ASP.NET 的 DropDownList 控件中为每个下拉选项添加描述的方法。通过直接输出 HTML 代码并利用 Literal 控件,实现了类似 title 属性的效果,提升了用户体验。
&spm=1001.2101.3001.5002&articleId=3912294&d=1&t=3&u=1c4bfa3116e54130ae35e6da1f498ff6)
1907

被折叠的 条评论
为什么被折叠?



